From makarius at sketis.net Fri Jan 01 09:38:35 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:33576) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvGtH-0003WH-AG (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 09:38:35 +0000 X-Cam-SpamDetails: score 0.4 from SpamAssassin-3.4.4-1884983 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.61.103 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.1 RCVD_IN_SBL RBL: Received via a relay in Spamhaus SBL * [62.216.204.19 listed in zen.dnsbl.ja.net] * 3.3 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.61.103]:33483) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvGtG-000jqH-Km (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 09:38:35 +0000 Received: from mors-relay-8403.netcup.net (localhost [127.0.0.1]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D6g215JjDz8Whh; Fri, 1 Jan 2021 10:38:33 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D6g214w9Jz8WZl; Fri, 1 Jan 2021 10:38:33 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -1.5 X-Spam-Level: X-Spam-Status: No, score=-1.5 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_05=-0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D6g204Rhvz8ss2; Fri, 1 Jan 2021 10:38:32 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-19.dynamic.mnet-online.de [62.216.204.19]) by mx2f26.netcup.net (Postfix) with ESMTPSA id A1563A3F03; Fri, 1 Jan 2021 10:38:31 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.19) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: stark at cs.stonybrook.edu, "cl-isabelle-users at lists.cam.ac.uk" References: <32ec16b6-59ba-b9d1-297e-837282883d8a at starkeffect.com> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <1164ddec-09e6-4f95-e2e7-baf353963d84 at sketis.net> Date: Fri, 1 Jan 2021 10:38:31 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <32ec16b6-59ba-b9d1-297e-837282883d8a at starkeffect.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <160949391186.24516.17269724652573982523 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: H0ObM6tkKM1G1Cti74c6EEbN37hEB/N/ajkdV/0fI7JNxTM= Subject: Re: [isabelle] Isabelle2021-RC0: Java/VM monitor X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jan 2021 09:38:35 -0000 On 04/12/2020 23:56, Eugene W. Stark wrote: > After attending Makarius' presentation earlier today, I tried to use the Java/VM monitor in Isabelle2021-RC0. > Two issues arose: > > Big issue: Could not convince JConsole to connect to the Isabelle/JEdit Java VM. Local connection > failed. JConsole documentation suggests that it should be possible for a user to connect to > local JVM instances that are running under the same user ID, but this did not seem to work. > SSH connections are not an option, because I do not enable password authentication via SSH and > there seems to be no provision for public key authentication. How does this work in Isabelle2021-RC1? The standard "jconsole" tool has some complexity and fragility in connecting to processes (local or remote). In https://isabelle.sketis.net/repos/isabelle/file/Isabelle2021-RC1/src/Pure/Tools/java_monitor.scala I have taken over more responsibility for the monitor, trying to make it more robust. > Smaller issue: The "Help" link to the "Online User Guide" for JConsole is stale. If I run JConsole > from shell level (this presumably does not run the version that is part of the Isabelle distribution), > then the same menu selection does not result in a stale link. This is beyond my responsibility. The situation might change again with a future version of OpenJDK. Makarius From lp15 at cam.ac.uk Fri Jan 01 16:29:06 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:47088) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvNIY-00058y-K0 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 16:29:06 +0000 X-Cam-AntiVirus: no malware found X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from lpaulson.plus.com ([81.174.248.240]:65266 helo=selenium.lan) by ppsw-30.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.156]:25) with esmtpsa (PLAIN:lp15) (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvNIY-000HvD-eW (Exim 4.92.3) (return-path ); Fri, 01 Jan 2021 16:29:06 +0000 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\)) From: Lawrence Paulson In-Reply-To: Date: Fri, 1 Jan 2021 16:29:06 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: To: Mikhail Chekhov X-Mailer: Apple Mail (2.3654.40.0.2.32) Cc: cl-isabelle-users at lists.cam.ac.uk Subject: Re: [isabelle] Several questions about the availability of certain specific proof tools for classical reasoning/simplification in Isabelle/HOL X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jan 2021 16:29:06 -0000 It sounds like you=E2=80=99ve been able to combine your proof method = with Isabelle2020 in order to create your category theory development. = And a usable formalisation of category theory would be an impressive = achievement. Maybe the way forward is for you to complete your example and contribute = it to the AFP. Material from AFP entries sometimes finds its way into = the Isabelle sources, and a fully-worked example would give us a good = basis for evaluating this idea. Larry > On 28 Dec 2020, at 16:05, Mikhail Chekhov = wrote: >=20 > Indeed, I use this type of pattern quite frequently in my work. For = example, I have introduced predicates that indicate that a given entity = is a function from a to b. Also, similar predicates exist for = injective/surjective/bijective functions and, even more generally, for = various specific arrows in arbitrary categories.=20 From mikhail.chekhov.w at gmail.com Fri Jan 01 19:55:24 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:38496) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvQWC-0001ru-A5 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 19:55:24 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.166.173 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.166.173 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mikhail.chekhov.w[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-il1-f173.google.com ([209.85.166.173]:40677) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kvQWA-000qXP-fh (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 19:55:24 +0000 Received: by mail-il1-f173.google.com with SMTP id e7so16229589ile.7 for ; Fri, 01 Jan 2021 11:55:22 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=dZFf/2sSCZf6p6F+VPtBnN1qAH9Qmpx5B+8tZkFo1LQ=; b=DJ+ZeC7DwtVlBVw3lIYqfHI8CHYueGpdGOTNjjVdbCcGsnxnmrAxjcMBxMqRiq7S61 MSfEn5ggWzqtNBZM6w2XCP3vLJZVkQumYjyIKSH+DZeCP8TaXc9ma/7joxVjcb1SsI6/ p1Vhl3RpIP2a8TfBw42v49CodqrP9Nlh8vLFudeCqr7F639JdH3FLchDHLF8kOrz5wkY R5utul7Zb0xW1Prax9tUUowWD0IKfoqUDxizjiBmKDRkSNwJic9o1wf/JpQWsOxlb5aj 2XKCn8MVBq+l7h4I+pc0gByttdyd7EQkZDVCJf/l++ldqR1RF/OGnxNcMRW9hUclmJBP 7kUQ== X-Gm-Message-State: AOAM531HamlvVzItM7HU8KvyAP1h7L7EJ3o2HCvjpfHijQ2G7lv3/218 cFW8u+cBkm0sZZnyyc3sVcqYTi7gFL7/8a/W8mM= X-Google-Smtp-Source: ABdhPJzSut0MUCVGkoFSTGShp1TTyX1iFjMKrfg3GbrREuQe2LhCHvticz28o+Jyw4X9AVOWr7oSwIJLBvC1pxTogcE= X-Received: by 2002:a92:cec3:: with SMTP id z3mr59400863ilq.256.1609530921866; Fri, 01 Jan 2021 11:55:21 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Mikhail Chekhov Date: Fri, 1 Jan 2021 21:55:10 +0200 Message-ID: To: Lawrence Paulson Content-Type: multipart/alternative; boundary="000000000000da589805b7dc1ed6" Cc: cl-isabelle-users at lists.cam.ac.uk Subject: Re: [isabelle] Several questions about the availability of certain specific proof tools for classical reasoning/simplification in Isabelle/HOL X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jan 2021 19:55:24 -0000 --000000000000da589805b7dc1ed6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear Lawrence Paulson, > It sounds like you=E2=80=99ve been able to combine your proof method with > Isabelle2020 in order to create your category theory development. And a > usable formalisation of category theory would be an impressive achievemen= t. > Maybe the way forward is for you to complete your example and contribute > it to the AFP. Material from AFP entries sometimes finds its way into the > Isabelle sources, and a fully-worked example would give us a good basis f= or > evaluating this idea. > > Thank you for your email and your comments. I was going to make the main part of this development available publicly from my own repository at the beginning of this year (and make an announcement about it on the mailing list at the same time). Also, indeed, I have plans for the submission of my category theory development to the AFP (and some other work that I am doing in Isabelle). However, for this particular project, it is unlikely that this will happen in the near future: I do not consider this work to be sufficiently mature for any type of "official" publication. Given that I have already accidentally initiated the discussion about my development, it may be a good idea to say a few words about it, as I have not yet mentioned it on the mailing list explicitly. I formalize category theory confined to/internalized in the type V from ZFC in HOL [1] by parameterizing categories over the limit ordinals > =CF=89, whose sets of objects/arrows are subsets of the relevant sets in the von Neumann hierarchy (borrowing on some ideas from [2, 3]). Thus, to the best of my knowledge, fundamentally, this work differs substantially from the type-based formalization in Isabelle/HOL in Category1 [4] and Category3 [5], as well as from the 'hybrid' formalization chosen in Category2 [6] (Category2 is still, primarily, type-based, but uses the type 'set' from HOL/ZF [7] for the exposition of the category Set and related concepts). The standard definition of a category that is used in this work is one of the non-object free variants, similar to Category1 and Category2. From the perspective of the 'main line of the development of category theory', the content that I have formalized thus far is somewhere between Category2 and Category3 (certainly, closer to Category3, though, as it includes some material on universal constructions, limits and adjunctions). I guess, in many ways, my development is similar to the main development line of category theory in the Mizar proof assistant [8,9], but I am not sufficiently familiar with it to be certain. However, the purpose and the nature of the content may be somewhat different from the previous developments in Isabelle (again, I can hardly comment on the development in Mizar). Arguably, I try to put more emphasis on the applications and, therefore, try to develop category theory as a tool for more applied formalization work: something that can be occasionally combined in a manner and style that is commonly used in the treatment of the subjects that rely heavily on the tools from basic category theory in their exposition, but do not, necessarily, attempt to advance the category theory itself. ---------------------------------------------------------------------------= ------------------------------ Nonetheless, the purpose of my questions in https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2020-December/msg00038.= html has little to do with my work on the formalization of category theory. Thus, most certainly, if anyone is aware of any references that provide a description/analysis/implementation of the algorithms that I have outlined in the aforementioned post, I would highly appreciate your advice. Kind Regards, Mikhail Chekhov [1] L. C. Paulson. Zermelo Fraenkel Set Theory in Higher-Order Logic. Archive of Formal Proofs. 2019. https://www.isa-afp.org/browser_info/current/AFP/ZFC_in_HOL/document.pdf. [2] M. A. Shulman, =E2=80=9CSet theory for category theory,=E2=80=9D arXiv:= 0810.1279 [math], 2008. [Online]. Available: http://arxiv.org/abs/0810.1279 [3] V. K. Rao. On Doing Category Theory within Set Theoretic Foundations. In: Sica G, editor. What is Category Theory? Polimetrica s.a.s.; 2006. [4] G. O=E2=80=99Keefe, =E2=80=9CCategory Theory to Yoneda=E2=80=99s Lemma,= =E2=80=9D Archive of Formal Proofs, 2005. [5] E. W. Stark, =E2=80=9CCategory Theory with Adjunctions and Limits,=E2= =80=9D Archive of Formal Proofs, 2016. [6] A. Katovsky, =E2=80=9CCategory Theory,=E2=80=9D Archive of Formal Proof= s, 2010. [7] S. Obua, =E2=80=9CPartizan Games in Isabelle/HOLZF,=E2=80=9D in Theoret= ical Aspects of Computing - ICTAC 2006, D. Hutchison, T. Kanade, J. Kittler, J. M. Kleinberg, F. Mattern, J. C. Mitchell, M. Naor, O. Nierstrasz, C. Pandu Rangan, B. Steffen, M. Sudan, D. Terzopoulos, D. Tygar, M. Y. Vardi, G. Weikum, K. Barkaoui, A. Cavalcanti, and A. Cerone, Eds. Berlin: Springer, 2006, vol. 4281, pp. 272=E2=80=93286. [8] =E2=80=9CAssociation of Mizar Users. Mizar home page.=E2=80=9D [Online]= . Available: http://mizar.org/ [9] C. Byliski, =E2=80=9CIntroduction to Categories and Functors,=E2=80=9D = Formalized Mathematics, vol. 1, no. \bf 2, pp. 409=E2=80=93420, 1990. [Online]. Availa= ble: http://fm.mizar.org/1990-1/pdf1-2/ cat_1.pdf On Fri, Jan 1, 2021 at 6:29 PM Lawrence Paulson wrote: > It sounds like you=E2=80=99ve been able to combine your proof method with > Isabelle2020 in order to create your category theory development. And a > usable formalisation of category theory would be an impressive achievemen= t. > > Maybe the way forward is for you to complete your example and contribute > it to the AFP. Material from AFP entries sometimes finds its way into the > Isabelle sources, and a fully-worked example would give us a good basis f= or > evaluating this idea. > > Larry > > > On 28 Dec 2020, at 16:05, Mikhail Chekhov > wrote: > > > > Indeed, I use this type of pattern quite frequently in my work. For > example, I have introduced predicates that indicate that a given entity i= s > a function from a to b. Also, similar predicates exist for > injective/surjective/bijective functions and, even more generally, for > various specific arrows in arbitrary categories. > > --000000000000da589805b7dc1ed6 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear Lawrence Paulson,


It sounds like you=E2=80=99ve b= een able to combine your proof method with Isabelle2020 in order to create = your category theory development. And a usable formalisation of category th= eory would be an impressive achievement.
Maybe the way forward is for yo= u to complete your example and contribute it to the AFP. Material from AFP = entries sometimes finds its way into the Isabelle sources, and a fully-work= ed example would give us a good basis for evaluating this idea.


Thank you for your email and your comments. I = was going to make the main part of this development available publicly from= my own repository at the beginning of this year (and make an announcement = about it on=C2=A0the mailing list at the same time). Also, indeed, I have p= lans for the submission=C2=A0of my category theory development to the AFP (= and some other work that I am doing in Isabelle). However, for this particu= lar project, it is unlikely that this will happen in the near future: I do = not consider this work to be sufficiently mature for any type of "offi= cial" publication.=C2=A0

Given that I have al= ready accidentally initiated the discussion about my development, it may be= a good idea to say a few words about it, as I have not yet mentioned it on= the mailing list explicitly. I formalize category theory confined to/inter= nalized in the type V from ZFC in HOL [1] by parameterizing categories over= the limit ordinals > =CF=89, whose sets of objects/arrows are subsets o= f the relevant sets in the von Neumann hierarchy (borrowing on some ideas f= rom [2, 3]). Thus, to the best of my knowledge, fundamentally, this work di= ffers substantially from the type-based formalization in Isabelle/HOL in Ca= tegory1 [4] and Category3 [5], as well as from the 'hybrid' formal= ization chosen in Category2 [6] (Category2 is still, primarily, type-based,= but uses the type 'set' from HOL/ZF [7] for the exposition of the = category Set and related concepts). The standard definition of a category t= hat is used in this work is one of the non-object free variants, similar to= Category1 and Category2. From the perspective of the 'main line of the= development=C2=A0of category theory', the content that I have formaliz= ed thus far is somewhere between Category2 and Category3 (certainly, closer= to Category3, though, as it includes some material on universal constructi= ons, limits and adjunctions). I guess, in many ways, my development is simi= lar to the main development line of category theory in the Mizar proof assi= stant [8,9], but I am not sufficiently familiar with it to be certain. Howe= ver, the purpose and the nature of the content may be somewhat different fr= om the previous developments in Isabelle (again, I can hardly comment on th= e development in Mizar). Arguably, I try to put more emphasis on the applic= ations and, therefore, try to develop category theory as a tool for more ap= plied formalization work: something that can be occasionally combined in a = manner and style that is commonly used in the treatment of the subjects tha= t rely heavily on the tools from basic category theory in their exposition,= but do not, necessarily, attempt to advance the category theory itself.

----------------------------------------------------= -----------------------------------------------------

<= div>Nonetheless, the purpose of my questions in=C2=A0https= ://lists.cam.ac.uk/pipermail/cl-isabelle-users/2020-December/msg00038.html<= /a> has little to do with my work on the formalization of category theory. = Thus, most certainly, if anyone is aware of any references that provide a d= escription/analysis/implementation of the algorithms that I have outlined i= n the aforementioned post, I would highly appreciate your advice.=C2=A0=C2= =A0

Mikhail Chekhov

[2] M. A. Shulman, =E2= =80=9CSet theory for category theory,=E2=80=9D arXiv:0810.1279 [math], 2008= . [Online]. Available:=C2=A0http://arxiv.org/abs/0810.1279
[3] V. K. Rao. O= n Doing Category Theory within Set Theoretic Foundations. In: Sica G, edito= r. What is Category Theory? Polimetrica s.a.s.; 2006.=C2=A0
[4] G. O=E2=80=99Keefe, =E2=80=9CCategory Theory to Yoneda=E2=80=99s Lemma= ,=E2=80=9D Archive of Formal Proofs, 2005.
[5] E. W. Stark, =E2= =80=9CCategory Theory with Adjunctions and Limits,=E2=80=9D Archive of Form= al Proofs, 2016.
[6] A. Katovsky, =E2=80=9CCategory Theory,=E2=80= =9D Archive of Formal Proofs, 2010.
[7]=C2=A0S. Obua, =E2=80=9CPa= rtizan Games in Isabelle/HOLZF,=E2=80=9D in Theoretical Aspects of Computin= g - ICTAC 2006, D. Hutchison, T. Kanade, J. Kittler, J. M. Kleinberg, F. Ma= ttern, J. C. Mitchell, M. Naor, O. Nierstrasz, C. Pandu Rangan, B. Steffen,= M. Sudan, D. Terzopoulos, D. Tygar, M. Y. Vardi, G. Weikum, K. Barkaoui, A= . Cavalcanti, and A. Cerone, Eds. Berlin: Springer, 2006, vol. 4281, pp. 27= 2=E2=80=93286.
[8] =E2=80=9CAssociation of Mizar Users. Mizar hom= e page.=E2=80=9D [Online]. Available: http://= mizar.org/
[9]=C2=A0C. Byliski, =E2=80=9CIntroduction to Cate= gories and Functors,=E2=80=9D Formalized Mathematics, vol. 1, no. \bf 2, pp= . 409=E2=80=93420, 1990. [Online]. Available: http://fm.mizar.org/1990-1/pdf1-2/ cat_1.pdf

On = Fri, Jan 1, 2021 at 6:29 PM Lawrence Paulson <lp15 at cam.ac.uk> wrote:
It sounds like you=E2=80=99ve been able to combine yo= ur proof method with Isabelle2020 in order to create your category theory d= evelopment. And a usable formalisation of category theory would be an impre= ssive achievement.

Maybe the way forward is for you to complete your example and contribute it= to the AFP. Material from AFP entries sometimes finds its way into the Isa= belle sources, and a fully-worked example would give us a good basis for ev= aluating this idea.

Larry

> On 28 Dec 2020, at 16:05, Mikhail Chekhov <mikhail.chekhov.w at gmail.com>= ; wrote:
>
> Indeed, I use this type of pattern quite frequently in my work. For ex= ample, I have introduced predicates that indicate that a given entity is a = function from a to b. Also, similar predicates exist for injective/surjecti= ve/bijective functions and, even more generally, for various specific arrow= s in arbitrary categories.

--000000000000da589805b7dc1ed6-- From mikhail.chekhov.w at gmail.com Fri Jan 01 21:45:02 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:54942) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvSEI-0004aA-1Y (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 21:45:02 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.166.50 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.166.50 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mikhail.chekhov.w[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-io1-f50.google.com ([209.85.166.50]:35104) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kvSEH-0010aI-jV (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 01 Jan 2021 21:45:02 +0000 Received: by mail-io1-f50.google.com with SMTP id m23so19890652ioy.2 for ; Fri, 01 Jan 2021 13:45:01 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=5ZySJxj7hVdruv6BYuLONe6WdR2wzvvDJleKQLSzBeI=; b=F7XkYU+h1gCctbMv4J2MwglIcFLrS6WxE5QNBpa4GlSAiPG84eI5YeYNsaAkKAjNp2 2Azw78m4r2FEDqocmDW5MiXrMHS+C/J5fRKCPzqiCjpWrpyF5lTCb3ClEgz0eX5r4z90 k/0obK29relWdyg8skGjgrVfvCND7l5DeGNt5Tws9d0QDE5hQCDCMf6+ZJRgnYzJhVyE /9+h2vasmlUdcbcVS9qkkpH7Faf9jYaQrNuCGneMPrdwXJ32BOnb6TDvxT1rC2lqBzK+ Sg7uTcHNKDXcKFzIgj4sY6aVaQ+it5mNOxrRdEHYUOUMO1DFETgbqstZxR6Z0NHs1QKf l1uw== X-Gm-Message-State: AOAM533dywproTc9/xtSAbmypPb/1w4VQ4grFSbpj5eZhkA8XdY3dyCp Mbu8F6not6W5veWUyqEk0HKmbEDaCLD3lBQT88I= X-Google-Smtp-Source: ABdhPJyTVAjJJ8fB5l61SNYK9gbSTZ59p/TT4ipf5eMmFhC2JcdPNqK2BfkhLfkpx3r0zmTyamWIPWDIxR0TTaZQIvg= X-Received: by 2002:a02:ccea:: with SMTP id l10mr53407793jaq.101.1609537499983; Fri, 01 Jan 2021 13:44:59 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Mikhail Chekhov Date: Fri, 1 Jan 2021 23:44:49 +0200 Message-ID: To: Lawrence Paulson Content-Type: multipart/alternative; boundary="000000000000f0708505b7dda680" Cc: cl-isabelle-users at lists.cam.ac.uk Subject: Re: [isabelle] Several questions about the availability of certain specific proof tools for classical reasoning/simplification in Isabelle/HOL X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jan 2021 21:45:02 -0000 --000000000000f0708505b7dda680 Content-Type: text/plain; charset="UTF-8" Dear Lawrence Paulson/All, On Fri, Jan 1, 2021 at 6:29 PM Lawrence Paulson wrote: > > Maybe the way forward is for you to complete your example and contribute > it to the AFP. Material from AFP entries sometimes finds its way into the > Isabelle sources, and a fully-worked example would give us a good basis for > evaluating this idea. > > On Fri, Jan 1, 2021 at 9:55 PM Mikhail Chekhov wrote: > > However, for this particular project, it is unlikely that this will happen > in the near future: I do not consider this work to be sufficiently mature > for any type of "official" publication. > > I would like to make one minor remark with regard to the last quoted statement. The method that I was referring to in my original post (albeit, for now, in a very rough zero-order form) is available from the, so-called, Isabelle Complement Library ( https://gitlab.com/user9716869/Isabelle-Complement-Library). It is likely that I will be looking to submit this library to the AFP in a reasonable time frame as part of another project, not related to my work on the formalization of category theory. Thus, I anticipate that it will be possible to evaluate the idea related to the method fairly soon. However, I would be extremely surprised if there was anything original about it: to me, it seems like it combines rewriting and introduction in the simplest and the most natural manner. Thus, I am still hopeful that a more mature implementation of this algorithm is already available somewhere. Kind Regards, Mikhail Chekhov --000000000000f0708505b7dda680 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear Lawrence Paulson/All,

=
On Fri, Jan 1, 2021 at 6:29 PM Lawrence Paulson <lp15 at cam.ac.uk> wrote:

Maybe the way forward i= s for you to complete your example and contribute it to the AFP. Material f= rom AFP entries sometimes finds its way into the Isabelle sources, and a fu= lly-worked example would give us a good basis for evaluating this idea.
=

On Fri, Jan 1, 2021 at 9:55 PM Mikhail= Chekhov <mikhail.chekhov= .w at gmail.com> wrote:

However, for this particular project, it is unlikely that = this will happen in the near future: I do not consider this work to be suff= iciently mature for any type of "official" publication.=C2=A0
=

I would like to make one minor remark = with regard to the last quoted statement. The method that I was referring t= o in my original post (albeit, for now, in a very rough zero-order form) is= available from the, so-called, Isabelle Complement Library (https://gitlab.com= /user9716869/Isabelle-Complement-Library). It is likely that I will be = looking to submit this library to the AFP in a reasonable time frame as par= t of another project, not related to my work on the formalization of catego= ry theory. Thus, I anticipate that it will be possible to evaluate the idea= related to the method fairly soon. However, I would be extremely surprised= if there was anything original about it: to me, it seems like it combines = rewriting and introduction in the simplest and the most natural manner. Thu= s, I am still hopeful that a more mature implementation of this algorithm i= s already available somewhere.=C2=A0

Kind Regards,=
Mikhail Chekhov
--000000000000f0708505b7dda680-- From kw448 at cam.ac.uk Sat Jan 02 08:23:26 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:60620) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvcC6-0001B0-4j (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 08:23:26 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.0 from SpamAssassin-3.4.4-1885010 * -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 2.1 HTML_IMAGE_ONLY_12 BODY: HTML: images with 800-1200 bytes of words * 0.0 HTML_MESSAGE BODY: HTML included in message X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta0.cl.cam.ac.uk ([128.232.25.20]:43417) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvcC5-00113P-ds (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 08:23:26 +0000 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]) by mta0.cl.cam.ac.uk with esmtp (Exim 4.93) (envelope-from ) id 1kvcC5-00BMLx-39 for isabelle-users at cl.cam.ac.uk; Sat, 02 Jan 2021 08:23:25 +0000 X-Cam-AntiVirus: no malware found X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-ej1-f53.google.com ([209.85.218.53]:39556) by ppsw-41.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.159]:587) with esmtpsa (PLAIN:kw448) (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kvcC4-000jc1-Si (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sat, 02 Jan 2021 08:23:25 +0000 Received: by mail-ej1-f53.google.com with SMTP id n26so29941905eju.6 for ; Sat, 02 Jan 2021 00:23:24 -0800 (PST) X-Gm-Message-State: AOAM532HpaxVzijUOMeY08CTLuNqzAjpwkD5OLKJK7mkmMj8+dPOexfb QUdbcTOjCemMO6I7vbP1m2ohqgmI4TTUDsRasBY= X-Google-Smtp-Source: ABdhPJwvDjTxAlyQfUbzE5fQS5tEMq8HhfzMpbXzdKde1MGRSoSM837oz8/rb/3rD1RKVwVTz+CNeeDHhYv2DmkxdPU= X-Received: by 2002:a17:906:3949:: with SMTP id g9mr57829765eje.493.1609575804096; Sat, 02 Jan 2021 00:23:24 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Kawin Worrasangasilpa Date: Sat, 2 Jan 2021 08:23:13 +0000 X-Gmail-Original-Message-ID: Message-ID: To: "isabelle-users at cl.cam.ac.uk" Content-Type: multipart/related; boundary="0000000000000af25905b7e69264" X-debug-header: local_aliases has suffix Subject: [isabelle] Cannot load theory when building X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 08:23:26 -0000 --0000000000000af25905b7e69264 Content-Type: multipart/alternative; boundary="0000000000000af25905b7e69263" --0000000000000af25905b7e69263 Content-Type: text/plain; charset="UTF-8" Hi, I am having a problem using Isabelle document preparation and curious if this is common. One of the theories in this directory I want to create a document for imports "HOL-Probability.Probability_Mass_Function". When I used command isabelle build -D, there is a following error message: [image: Screenshot 2021-01-02 at 08.12.53.png] This is Root file: session alltheories = HOL + options [document = pdf, document_output = "output"] theories [quick_and_dirty] Forkable_Strings_Are_Rare document_files "root.tex" I have checked on other theories that import other theories, e.g., "~~/src/HOL/Library/Multiset", and the command works just fine. Thank you, Kawin --0000000000000af25905b7e69263 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

I am having a problem using Isabelle = document preparation and curious=C2=A0if this is common. One of the theorie= s in this directory I want to create a document for imports "HOL-Proba= bility.Probability_Mass_Function". When I used=C2=A0 command isabelle = build -D, there is a following error message:



This is Roo= t file:

session alltheories =3D HOL +
=C2=A0 o= ptions [document =3D pdf, document_output =3D "output"]
theori= es [quick_and_dirty]
Forkable_Strings_Are_Rare
=C2=A0 document_files=
=C2=A0 =C2=A0 "root.tex"

I have = checked on other theories that import other theories, e.g.,=C2=A0"~~/s= rc/HOL/Library/Multiset", and the command works just fine.=C2=A0
=

Thank you,
Kawin

--0000000000000af25905b7e69263-- --0000000000000af25905b7e69264 Content-Type: image/png; name="Screenshot 2021-01-02 at 08.12.53.png" Content-Disposition: inline; filename="Screenshot 2021-01-02 at 08.12.53.png" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: ii_kjffj7ff1 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 7YecH64fiDvQfpB9sPFHxx83HWIcqmxCmmY19TWLm1UtmS1dh8cdbm8Nbj300+ifdh2xPVJ71PTo imPUY4uPDR4vO97fJmvrPZF/4mH71PbbJyeevNoxoaPzVNypMz9H/3zyNOf08TMhZ46cDTp7+Bz7 XPN5//NNF/wuHPrF75dDnf6dTRcDLrZcCrzU2jW269jlsMsnrkRe+fkq7+r5awnXuq6nXb95I/uG 6qbw5tNbRbde/Fr668DtBXcIdyrvGt6tvmd5r+4frv/Yp/JXHb0fef/Cg5QHtx8KHj57pHj0oXvx Y/rj6ic2T+qfej890hPdc+m3Sb91P5M9G+it+N3o903PXZ7/+Ef4Hxf6JvZ1v5C/GPxz2Uvzl7te +b5q70/qv/e6+PXAm8q35m93v2O/O/0+4/2TgRkfSB9qPrp+bP0U9+nOYPHgoIwv52uOAhhsaF4e AH/uAoCeCQDjEjw/TNLe+TSCaO+pGgT+E9beCzXiD0Aj7NTHdW4bAPthc1oAuWFTH9VTwwHq4zPc dKLI8/HWctHgjYfwdnDwpRUApFYAPsoHBwc2Dw5+hHdU7BYAbdO1d021EOHd4Fv1XRfcWjN5AfhC tPfQz3L8sgfqCHzBl/0/AYQKiZib1W47AAAAimVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsA BQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA5KG AAcAAAASAAAAeKACAAQAAAABAAAEcqADAAQAAAABAAAAkgAAAABBU0NJSQAAAFNjcmVlbnNob3Ry lRWBAAAACXBIWXMAABYlAAAWJQFJUiTwAAAB12lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6 eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAi PgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRm LXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAg ICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAg IDxleGlmOlBpeGVsWERpbWVuc2lvbj4xMTM4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAg ICAgPGV4aWY6VXNlckNvbW1lbnQ+U2NyZWVuc2hvdDwvZXhpZjpVc2VyQ29tbWVudD4KICAgICAg ICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjE0NjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAg IDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgq1G7pbAAAAHGlE T1QAAAACAAAAAAAAAEkAAAAoAAAASQAAAEkAAO8Lbhvv8wAAQABJREFUeAHsnQegVLXSx3OpIh3s FJVmwYqI0uHSbIgNBUTpiKIgIAooRYpdsFdUOooFEEUFRVABsaFY6diwIRZQscD9/r/Jye65y72C gPre+zZcds+ek5NJJjOTyWQyydi/fPmsLJfhnNvi7IuPrAyXobtZebJ0ncfpSs/1mGzc0ncenvsX 9BldR8/9lz6Vx17gRf5418rXRR5db8lyefQsDR+MpfHvyQm6SdNfmv/S8ictfxkw0uNPevxFj0jr H2n9S0SASJCKkNY/0/p3ev7BvIGpVXr+ZbQAOiQf/Jc+0/PPCCHCBX/ITi7AS3r+/T9lf8gov385 SQFvTGHyaEl9Hb4z7Jm/z23PMFCEJtv6vQXOUbJXGGH1W7q3EY3djIokj7+U8UYPkgTly+J3Gn6E LEOmR2oa/36Ygn48denTJFKa/sBHmv88zxjLpOWPKCItf9PjT3r8ZYhI6x8mDvThk5eUaf0rrX+m 9e/0/EMak03oJRVsjpeef6Xnn36EsHGTIcOmWun5F2bSCB3ebvGfOP8sv//+qqcqGlUumFus5vQk beBLy0F+FcQ/sVeCthTlSTRW+e093WdVOY8JCp4CxwuMLSqUbObmk4afxn+a/mAyzyPwhSUYTxd8 pfkvLX8kJyEHUlr+MnQE5hBCbDDxXwk20uP0+JMef9P6B8q4SQ2YxhbM0vpXWv80kSl6SOv/4o60 /omSiWZhksJ/QBu64iutf6b1z7T+meCO/zT9O6OctlYhw0yeG/cywGnCoBtZqi2O7Tyk4tlSxPP2 FTF7/Dn3tVko6NdeTvLLlG9y+pfsUx9p+EGEpvGfpr80/6XlT1r+psef9Pib1j+8cpTWv9AZYymt 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 /+v6cd1axRLOZmb7sJ+pqVr86DVya/3ChaxkUzI0oiL+V8S8AT/+rtUHizF9rbDllq65TrNW/r7C TZ402f2yfLmeRxXYn+g75aLnuHT9UfjFiue5V6ZOdbqhS6fYb7uTTj7ZFDiAAP6QIcNc2zPPtHZ6 PNLwo2a4V1+dqsVqD/f9D99tNP6m/Qam8EOBFOAbzD8R/0D//yb4559/vuvVs5db8sMP7qAaB4tY f5z/ioo/p75Tp77idthhR/eO8cspfyl8G1gR420K/t/Q/j/0sEPdmIceEs55ruW/pcj56KP/V/hv KP2J+fXq1FfFL9u7t995x50s+RLkRlz+FZX/4vDr1D7Ebb65t8ipVKmyu+7669QXXiGDIidlTmmF 0vK3Tu06bvPSm1s7KlaqqHLXWw4UQE+Pf3q98mdDxl+DRg2l6L5Prcp3Bx10kFuydOkmw//v4P84 /XPBL1duS3d4ixaax1a6l1/WPPbLcuGOQE/Tf1P1fy74Gzr/rm/+a9nyWDfyppuEQjT/CpNUB0aP fvrpR9ejew/38qSXM+a/W2651R3176OsRKpM9Is/q1etdp06d3KTJk/WBl85ovnv9ttudUceSbkI gP2JvuvpKll3de7c2U0RfZn/q1Xbzr3++jS9yUrpInqR/vHqq6+60884PWP90VfKqC5ndXErV/3u 9ti9ujv++OPdddcxnvJci7jytYD1x9133e1Q6ufLgqdx48Zu3rx5BY6/VFNi6584/sn877vrr1j/ bej8t77xv6HjL4Hveznh/7T8S8Z/Mv6ZIxL5F83Z9if6XsD8a4ojvUvkr8aOEmQyWuiLFDmKkRM9 5FXMWYrHtrZbK6mDjtH+lxaCUzISn8VQ0oTTNv9Aiyd9MeWN19lZZj70zN90ZT/04esJv/4s+Cy6 Ro0aZfC6dbvAPUV8HE8GQLuhittzphQ5a9ascaee2kruNCXcTv/aye2zzz6u1amnyh2rlOV+WuXO O/+C/zr8DUk+/ib6bwz888/v5nr16mmKnAMPPvgv5b+mjZu4e0fda83uJoXSk9ow/zfz/4bSv96h h8kiB0WOM0XOBx9/9P8Kf5tHIqJpyLj1yb9GjZpKvohflPf8C7q5p58knhJT9KaVf5UqVFT8HawU ZAVxvixrnh5fJPlbsVIl977i9tBAxtXTTz+t7zYNRFj6X3wG+b8h469B/UbuvvulyBH+B8l1dskP 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 YII= --0000000000000af25905b7e69264-- From makarius at sketis.net Sat Jan 02 10:03:54 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:60418) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvdlK-0003kz-Ji (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:03:54 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [46.38.247.119 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:34841) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvdlJ-000XSj-Rf (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:03:54 +0000 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kvdlJ-0004MI-Cf for isabelle-users at cl.cam.ac.uk; Sat, 02 Jan 2021 10:03:53 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [46.38.247.119 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([46.38.247.119]:51373) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvdlI-000Hw7-jB (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:03:52 +0000 Received: from mors-relay-8404.netcup.net (localhost [127.0.0.1]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4D7HXk53dqz8RRn; Sat, 2 Jan 2021 11:03:50 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4D7HXk4hBkz4xQh; Sat, 2 Jan 2021 11:03:50 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D7HXj58qcz8sk8; Sat, 2 Jan 2021 11:03:48 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 559ECA8DB3; Sat, 2 Jan 2021 11:03:48 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Kawin Worrasangasilpa , "isabelle-users at cl.cam.ac.uk" References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= mQINBFcrF+4BEADMcXMnu3XHg6bRsGe3tajAHqvm89+ecn/Y0WhjI2FplhkZs1LwM+ZA9eXh hiBrC/yX0FJ+qjzVIfm66CX4nzVG1f8qwaervMpvpA+gbhtQiXc0t+LDcqV+5cdtpKplPHSu oW+KzJKyCdkDB5fYMOzuaXQwYi12YAEQH2r6K7Q7Np+k82Xli1pWe+Tha/BH0pKJ5Q01aPep ASrNW9F+moX7C0fxWl65LiXGmF0UJep6fqKruhy8oNF4p6I2oZhktvaR/x6tkL2PkT3r+xUS 6g5i3BOjfwhoGY57nsioeK+8VFvdRH5DK4CbrTgDl7ddcrEeENrfpDiPLs/afVbe/T9oDXmJ OJAO4WMpfZNiFhx9SSVTHohw29Fyzn0N1UQGjPqAY1jg32DAxlnMQ0co/KabEFAcoQsW1/6U ZGiNxYVIyEKGrnSY4WuLuNC8CmU1RaYSdTk1y9tYdxufM9lH9ynzJwac6FdalOOxMR2G9JG8 L9/dk3ytlP6DVwkPBSCpJaTkTyMp1wSkF1oK/BDu5xKUQh0zvvLCuZ16hiKRBBSjpVExXRZC u+NC1Y4wqm1HOH7HBwgZ1Hv9S/EPmI9iwgcW0SpDJqPf2Cm7oFMZsZ5Dbs6/nOQoe4Zegy45 ymqDRlIekP7zj+vOoR80XAYfmAH5DElJHldcjmgLBMdpvvqGZwARAQABtB5NYWthcml1cyA8 bWFrYXJpdXNAc2tldGlzLm5ldD6JAj0EEwEIACcFAlcrF+4CGyMFCQlmAYAFCwkIBwIGFQgJ CgsCBBYCAwECHgECF4AACgkQ89KUEoG/TbiVrw/9FjEBgh2CB7Qof7Y4k0yc7j+x/A0Wmkc0 iwP5jaKJuxRv1JJT8CFqm392+/cdh3EkRUk/UWD+hpNndYJwxZltrEpKVqFAWoVOg3ZJ4cuI MYhlp4tk/T0KSl/gKT16dc6uJ7M/FzW0zv50vjFtAdianEDuqLXHKaGDUwWoOTDly0gdZ7aH /eNby6ONHUSJMdTNOErh2N+uESM4aZqUuuL/dTb6xiVzCpV5saT8EMakoazUd7QhoBaHvqfs BL7DEmvcTtA79GF3ufHrF/UndIcx8aMznZ2PGNjmy5seDCoKX0EYHdLam8vgo/TuU4dRw5Zn 6E/ouyNOliXT1Mn+SomeBSXTR5MXRq4TQ9MKVGiP0Yl+7GJQU0JFtDC1ZZEOyjIiwGWOhbUR pYujVm8C1iQ7NcEn2BqOAmRML6IR6+En4RLbgCNsBNXlmTPRJOaI+iV6DZzg3x9zcaDGhoYt jkBTEFpb0F3jU9yuaEU5401NV34fUxg8tqXs0R9CKinO7kQ8N+RDjyyY8k2KZiDYBJ6r+OK0 d7TaTj7F9tmpAu2pmQ8lxOKjDZIwlbGTsC4lxISmcPzBGTKXja5nakcWYx/lZ4vje0WZ12HN amnD1weakFixRYit0d+Kz7cuj684NSbhwC0oN2t9R06Nfq8UPEWRKEitCly0OtRgio8zVZ/L eAC5Ag0EVysX7gEQAKs5NVOvYkE/r8KLsJ8/L/9eulpJDOFilZ9fyuqii7t1UpHZLb58QghW JM+IB2GSGsB+pOi6Je7hmwxcVdXYbGlYZ4Btqqw48/XptfbNZ8alCk6AqoVFP4MbYxij/Qqv f/Yw6GR0p1RIC/W4GF/JgDDwDFEiMT6Pv6dpM8acdNFCERDZdoOJiC+XJRwy5lZ2g5FOJkT9 rVI9EnA7mBXLLjPOMUp2/eZxN6gKOZzI3ej9vixg3adWR2yfKPgacHP/ujnVfITOl0OyLE5f zIHq85dEV4zW6Mpx7+Um0tdkwlUVMaW2nQ1bcwejgVAuD/MLSF/lSs3N5D1ctw5QUemYh7/e 2dC12UJuFDFxNPzcltQTlkBCVWV1D0SjScDHdlF6HhzpZOlt52/rwTn5GHtY4nwAL4IJ+Yvl WX8YKmyILH4Ai8c/N2IVRERQ2qorWFlsQnqrXV+hXf8aUwjc/pq4K9rsWxvle3TpeZfoBefU /s1PEX0SepZFAqAXHlQ9DZPsdPDo9EFK695G5w4nf03EhE9TV1MKGUuc1XJ6f1ZLaxu0TwTA 6qYtKIyBcU0Yn61S2Kh7Dgb5LdLV8nfl71+n/xIt2IWH5UJ9YuwEgGEP0c6ImnAUZ+nRodFI 0RwtCWlRkSJWtQln1vcphrz8PjWZH6e/nWnceXR/Al5P0WexQgtvABEBAAGJAiUEGAEIAA8F AlcrF+4CGwwFCQlmAYAACgkQ89KUEoG/Tbh7VQ/9Fc4bdwJYc3jH/LiuXv6uMg50Cv6lg2NT bL9DClWGNiYzejfM2A4c5K+GRUXhyD7S9U203MOv3z7uTbtyQL8XVolNnQlRIkB00f8nJ2sw HMXx/hemjXBvtlneq+vrMORJexldXUMFq19ZZrvj0zZL+pUnGFqt+IWTEE5GpL7wu20Demaj jYyGyKcDZyJOWZcl4e45Yn3hl0EI2xVmVh7ZinVsb3+nqgcltFy4Jt+drezwV2EiLGJHfGsT jEQb3C9VpneU4Jo+hHtfqLK4Q8+WlIOzSfyvwbabxrhyqg7i11fu8yckNW3dCURPYigV07HK 4dN0zhj53M0Q3eTwegJRPJb8XoLDcSdbsaU2HIShlGDKmzS9KL4JzLikQ9dXROC4cae3jRKH aexFi4B55Ab6FxIfXj09wUCO6Nm0owDfIBDMgiywvi2Rb2etCjBgRbSj71S2nntd9ZitoYvE yKirLkWmJRbp3ln8cHi8Uc/jr1cDPVRWuLUN0uceMj5+AR+NZVakcNUHWJCinMMjacho0SyP QmocdU8pzzupreaVWruqaSzqcpWBPwrE5OxEtJ+OyIBjKmRJ5eptjh4rKgNaVnKjhqbvr+Yz pUAgPp38jjf4HJghUGIfWArKNelKJEJOYk94DAbmT67LgqEdZ0yaA2BCHmreN727WIzV9vkX NMc= Message-ID: Date: Sat, 2 Jan 2021 11:03:48 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160958182846.10287.3446699103211206365 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: SH9eKLh8blZW/TR/lFnExfD6jIHnk4hkMzbD7tiMdShQV8c= X-debug-header: local_aliases has suffix Subject: Re: [isabelle] Cannot load theory when building X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:03:54 -0000 On 02/01/2021 09:23, Kawin Worrasangasilpa wrote: > Hi, > > I am having a problem using Isabelle document preparation and curious if this > is common. One of the theories in this directory I want to create a document > for imports "HOL-Probability.Probability_Mass_Function". When I used  command > isabelle build -D, there is a following error message: > > Screenshot 2021-01-02 at 08.12.53.png > > This is Root file: > > session alltheories = HOL + >   options [document = pdf, document_output = "output"] > theories [quick_and_dirty] > Forkable_Strings_Are_Rare >   document_files >     "root.tex" Just try this before 'theories': sessions "HOL-Probability" > I have checked on other theories that import other theories, > e.g., "~~/src/HOL/Library/Multiset", and the command works just fine.  You should not "steal" theory files from other sessions like that. The proper way is to import "HOL-Library.Multiset" and ensure that the cumulative import session graph contains "HOL-Library". NB: Isabelle2018 (August 2018) is really old, Isabelle2020 (April 2020) is current, and we are approaching Isabelle2021 (February 2021). Makarius Makarius From makarius at sketis.net Sat Jan 02 10:11:37 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:52942) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvdsn-0003zr-8j (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:11:37 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [46.38.247.119 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta0.cl.cam.ac.uk ([128.232.25.20]:59865) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvdsm-000Mxe-li (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:11:37 +0000 Received: from ppsw-31.csi.cam.ac.uk ([2001:630:212:8::e:f31]) by mta0.cl.cam.ac.uk with esmtp (Exim 4.93) (envelope-from ) id 1kvdsm-00BNrF-FL for isabelle-users at cl.cam.ac.uk; Sat, 02 Jan 2021 10:11:36 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [46.38.247.119 listed in list.dnswl.dnsbl.ja.net] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([46.38.247.119]:58725) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvdsl-000qVS-Lc (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:11:36 +0000 Received: from mors-relay-8404.netcup.net (localhost [127.0.0.1]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4D7Hjf2GY8z8bnJ; Sat, 2 Jan 2021 11:11:34 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4D7Hjf1slzz4xQh; Sat, 2 Jan 2021 11:11:34 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7Hjd57f2z8sjL; Sat, 2 Jan 2021 11:11:32 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 9EAA6A824E; Sat, 2 Jan 2021 11:11:31 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Walther Neuper , isabelle-users References: <63dd9e30-9178-36ac-da31-bc6aa29aa2b4 at jku.at> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sat, 2 Jan 2021 11:11:31 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <63dd9e30-9178-36ac-da31-bc6aa29aa2b4 at jku.at> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160958229180.32546.9638908836014653234 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: j1q1NB7c++d23ByOdgf5pvMhlvhyCO7Vb+jnzfdd4bOTNGk= X-debug-header: local_aliases has suffix Subject: Re: [isabelle] quote in mixfix annotation X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:11:37 -0000 On 06/10/2020 10:04, Walther Neuper wrote: > From Isabelle2019 to Isabelle2020 there is a change in handling quotes > in mixfix annotations (PS1). > > Now, when updating our project to the new Isabelle version, this change > breaks definitions of constants, which are named according to standard > notation in structural engineering:   M⇩b   and   M⇩b' > > Although I do not (yet) lookup the symbol tables directly, I see from an > error message (PS2), that the parser fails with the two identifiers. The > respective cut-down theory is attached. I couldn't make a clue from the > isar-ref manual, so my question: > > Is there a possibility to continue the standard notations for   M⇩b   > and for   M⇩b'  , or should we let these from now on? > > > PS1: NEWS > > * Mixfix annotations may use "' " (single quote followed by space) to > separate delimiters (as documented in the isar-ref manual), without > requiring an auxiliary empty block. A literal single quote needs to be > escaped properly. Minor INCOMPATIBILITY. (This rather old thread appears to be still open.) You merely need to escape the single quote within mixfix, i.e. using "b'' " instead of former "b' ". Makarius From makarius at sketis.net Sat Jan 02 10:25:42 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:51024) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kve6Q-0004OF-Ba (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:25:42 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [194.59.206.189 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:54117) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kve6P-000iQn-Rj (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:25:42 +0000 Received: from ppsw-41.csi.cam.ac.uk ([2001:630:212:8::e:f41]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kve6P-0004ar-Gi for isabelle-users at cl.cam.ac.uk; Sat, 02 Jan 2021 10:25:41 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [194.59.206.189 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([194.59.206.189]:44797) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kve6O-000iQK-S2 (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:25:41 +0000 Received: from relay02-mors.netcup.net (localhost [127.0.0.1]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D7J1v692Fz4KHH; Sat, 2 Jan 2021 11:25:39 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D7J1v5jtGz7vFl; Sat, 2 Jan 2021 11:25:39 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D7J1v0HwNz8sk8; Sat, 2 Jan 2021 11:25:39 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id A7830A824E; Sat, 2 Jan 2021 11:25:38 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Norbert Schirmer , isabelle-users References: <89F5D48B-5E09-40F6-A007-9E6529916A54 at apple.com> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sat, 2 Jan 2021 11:25:38 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <89F5D48B-5E09-40F6-A007-9E6529916A54 at apple.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <160958313882.9392.16827257699770933631 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: MjluXMPNgs4OEI5w49C5a1ikbL1K/H+MChzv+Ag9pvTG2MI= X-debug-header: local_aliases has suffix Cc: Sebastian Skalberg Subject: Re: [isabelle] Issue with Isabelle/jEdit in fullscreen mode in macOS Big Sur X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:25:42 -0000 On 16/11/2020 08:58, Norbert Schirmer via Cl-isabelle-users wrote: > > Dear Isabelle Team, > > There is some odd behaviour of Isabelle / jEdit in macOS Big Sur. When using Isabelle / jEdit in fullscreen mode (via the green window-fullscreen toggle in the left-upper corner of the window, not View -> Toggle fullscreen mode), popup windows like the search window (Command - F) or the hypersearch results are now also presented in fullscreen (in Catalina they were presented as ordinary windows on top). > > This does not only look odd, but also makes navigating hypersearch results impossible, as one switches back and forth between the editor view and the result view. Moreover, it is unclear how to close the hypersearch results again. Hope this can be resolved with the upcoming Isabelle2021. That is a serious GUI problem. The OpenJDK guys still have no solution for it: https://bugs.openjdk.java.net/browse/JDK-8256465 Maybe we can figure out some workaround in the coming weeks ... (I am open to suggestions my macOS experts). Makarius From makarius at sketis.net Sat Jan 02 10:36:09 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:39058) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kveGX-0004dA-1x (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:36:09 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.61.103 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.61.103]:55027) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kveGW-0000Ay-d6 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:36:09 +0000 Received: from mors-relay-8403.netcup.net (localhost [127.0.0.1]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D7JFz5Qqcz8bpV; Sat, 2 Jan 2021 11:36:07 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D7JFz51phz8bpT; Sat, 2 Jan 2021 11:36:07 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D7JFy2DPXz8ssg; Sat, 2 Jan 2021 11:36:06 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 7E61BA824E; Sat, 2 Jan 2021 11:36:05 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: stark at cs.stonybrook.edu, "cl-isabelle-users at lists.cam.ac.uk" References: <48610e0f-012e-10af-8ad8-0cb916b47a8d at starkeffect.com> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sat, 2 Jan 2021 11:36:05 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <48610e0f-012e-10af-8ad8-0cb916b47a8d at starkeffect.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <160958376564.27098.3979829963299504671 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: N5oc2jNNvleAVJHdLLkr/M8d5AMZ3up0en2OqaPSohzMx9A= Subject: Re: [isabelle] Question about "try" and future tasks X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:36:09 -0000 On 19/11/2020 01:49, Eugene W. Stark wrote: > I have been using a relatively recent snapshot version of Isabelle (Isabelle_04-Nov-2020). This version > does a rather better job of showing what is going on if the Monitor panel is raised. That is good. > > My question is: In certain situations, if I use "try" and let it crunch for awhile, I can arrive at > a situation where there are perhaps 180K future tasks showing in the Monitor window. I can sometimes > then delete the "try" from the input buffer, but the future tasks remain and may take many minutes > to clear. Do you still see this in current Isabelle2021-RC1 https://isabelle.in.tum.de/website-Isabelle2021-RC1 ? If yes, can you provide a reproducible example for such a situation? Makarius From makarius at sketis.net Sat Jan 02 10:40:04 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:59168) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kveKK-0004jk-P2 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:40:04 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.61.107 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.61.107]:33139) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kveKJ-0003Q6-MX (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:40:04 +0000 Received: from mors-relay-8405.netcup.net (localhost [127.0.0.1]) by mors-relay-8405.netcup.net (Postfix) with ESMTPS id 4D7JLW49skz6yc4; Sat, 2 Jan 2021 11:40:03 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8405.netcup.net (Postfix) with ESMTPS id 4D7JLW3qZNz6ybr; Sat, 2 Jan 2021 11:40:03 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7JLV3ccQz8ss2; Sat, 2 Jan 2021 11:40:02 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 15B21A824E; Sat, 2 Jan 2021 11:40:02 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Peter Reitinger , cl-isabelle-users at lists.cam.ac.uk References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <3b52612e-b19d-98bb-2c39-9142443bb26f at sketis.net> Date: Sat, 2 Jan 2021 11:40:01 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160958400222.31934.8723501333536533816 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: np0TqEm20Ot27bBjpDw/ENhiQaEc33hyhkQ6maGXcCUOqNM= Subject: Re: [isabelle] Bug report Isabelle 2019 and Isabelle 2020 X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:40:04 -0000 On 21/11/2020 06:56, Peter Reitinger wrote: > Hi, > > sorry for recently reporting just confusing behavior because of > polymorphism as a bug. > > But this time, I am very sure to have observed a bug, if creation of a memory > dump characterizes a bug. ;-) > > First the screenshot: > > image.png > > The theory reproducing this bug is attached. The try at the end of the > experimental proof (sorry about the mess there, I am still experimenting with > Word & Co theories) produces the error. Can you try this again with current Isabelle2021-RC1 https://isabelle.in.tum.de/website-Isabelle2021-RC1 ? It will require to change the Word setup: the NEWS file contains some hints about that. Makarius From makarius at sketis.net Sat Jan 02 10:48:08 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:56440) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kveS8-0004xc-8W (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:48:08 +0000 X-Cam-SpamDetails: score -3.0 from SpamAssassin-3.4.4-1885010 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [185.244.194.184 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -2.7 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([185.244.194.184]:55561) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kveS7-000eL3-jr (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 10:48:08 +0000 Received: from relay01-mors.netcup.net (localhost [127.0.0.1]) by relay01-mors.netcup.net (Postfix) with ESMTPS id 4D7JWp11qBz8tNS; Sat, 2 Jan 2021 11:48:06 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by relay01-mors.netcup.net (Postfix) with ESMTPS id 4D7JWp0cV1z7wm4; Sat, 2 Jan 2021 11:48:06 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7JWn4kKtz8t20; Sat, 2 Jan 2021 11:48:05 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 2CB8AA824E; Sat, 2 Jan 2021 11:48:05 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Manuel Eberl , "cl-isabelle-users at lists.cam.ac.uk" References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <1c91d189-70f4-f313-bc03-0f226f95a52a at sketis.net> Date: Sat, 2 Jan 2021 11:48:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <160958448529.31269.8109692275083523894 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: rO7HkRuz9nSQgX7M72NplrtsMnIY+O2v24aIUuSdehv5QPA= Subject: Re: [isabelle] Using LaTeX output print mode for source text X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 10:48:08 -0000 On 09/12/2020 17:36, Manuel Eberl wrote: > Is there any way to force Isabelle to print source text (definitions, > theorem statements, proofs, etc.) to LaTeX not the way it was typed, but > with abbreviations? > > I.e. if I define an abbreviation "|X| = card X" and I have > > lemma "card X = 1" > > I want the LaTeX output to show "|X|", not "card X". In general, applying force is not going to work in the long run, and often causes a lot of harm. Isabelle2021 will have much more formal document markup in standard builds, allowing better HTML presentation, for example. At a later stage that might impact PDF document preparation as well, but it might require a long time to get there. Term abbreviations or notations are more difficult, and not part of existing concepts so far. Makarius From lp15 at cam.ac.uk Sat Jan 02 11:14:28 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:39406) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kverc-0005kH-F1 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 02 Jan 2021 11:14:28 +0000 X-Cam-AntiVirus: no malware found X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from lpaulson.plus.com ([81.174.248.240]:55424 helo=selenium.lan) by ppsw-41.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.159]:25) with esmtpsa (PLAIN:lp15) (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kverc-0007al-Qg (Exim 4.92.3) (return-path ); Sat, 02 Jan 2021 11:14:28 +0000 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\)) From: Lawrence Paulson In-Reply-To: Date: Sat, 2 Jan 2021 11:14:27 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: <05C5DE09-E308-4FEF-A7CC-169ABF9D2B61 at cam.ac.uk> References: To: Mikhail Chekhov X-Mailer: Apple Mail (2.3654.40.0.2.32) Cc: cl-isabelle-users at lists.cam.ac.uk Subject: Re: [isabelle] Several questions about the availability of certain specific proof tools for classical reasoning/simplification in Isabelle/HOL X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jan 2021 11:14:28 -0000 Well, obviously auto and force combine rewriting and introduction, but = not as I think you intend (to support conditional rewriting). Larry > On 1 Jan 2021, at 21:44, Mikhail Chekhov = wrote: >=20 > However, I would be extremely surprised if there was anything original = about it: to me, it seems like it combines rewriting and introduction in = the simplest and the most natural manner. Thus, I am still hopeful that = a more mature implementation of this algorithm is already available = somewhere.=20 >=20 From florian.haftmann at informatik.tu-muenchen.de Sun Jan 03 09:44:58 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:40076) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kvzwY-0003ok-Uw (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 09:44:58 +0000 X-Cam-SpamDetails: score -2.4 from SpamAssassin-3.4.4-1885028 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [131.159.0.36 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [131.159.0.36 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta0.cl.cam.ac.uk ([128.232.25.20]:41511) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvzwY-000AaB-L6 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 09:44:58 +0000 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]) by mta0.cl.cam.ac.uk with esmtp (Exim 4.93) (envelope-from ) id 1kvzwY-00BcAA-9Q for isabelle-users at cl.cam.ac.uk; Sun, 03 Jan 2021 09:44:58 +0000 X-Cam-SpamDetails: score -2.4 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [131.159.0.36 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [131.159.0.36 listed in wl.mailspike.net] * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-out2.in.tum.de ([131.159.0.36]:46290 helo=mail-out2.informatik.tu-muenchen.de) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kvzwX-000AYW-Lv (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sun, 03 Jan 2021 09:44:58 +0000 Received: by mail.in.tum.de (Postfix, from userid 107) id B84791C148C; Sun, 3 Jan 2021 10:44:53 +0100 (CET) Received: (Authenticated sender: haftmann) by mail.in.tum.de (Postfix) with ESMTPSA id B3EB31C1249 for ; Sun, 3 Jan 2021 10:44:51 +0100 (CET) (Extended-Queue-bit tech_wcozw at fff.in.tum.de) To: Isabelle-Users Mailinglist From: Florian Haftmann Autocrypt: addr=florian.haftmann at informatik.tu-muenchen.de; keydata= mDMEW4pH0BYJKwYBBAHaRw8BAQdAIIBLFhTF7RSAZredeYMftpgRJZSF5X3VVtso084X3660 PUZsb3JpYW4gSGFmdG1hbm4gPGZsb3JpYW4uaGFmdG1hbm5AaW5mb3JtYXRpay50dS1tdWVu Y2hlbi5kZT6IlgQTFggAPgIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBILJqbJrurlT 4Zn85KcHFyIyz6TpBQJf7KrvBQkGZIwfAAoJEKcHFyIyz6Tp/ugBAL2yRfjY1/2YxFcedOFp bRJFZ7H7SGVL0UeX9hLNOanwAP9PCZrz644aWsVleb52yi/CL0K8Q/WfXLH76xhpYGQLCrg4 BFuKR9ASCisGAQQBl1UBBQEBB0CU8ZQJlBvMpEyGnR4jpUF+HavpBguEs4uAxFQBY21SHgMB CAeIfgQYFggAJgIbDBYhBILJqbJrurlT4Zn85KcHFyIyz6TpBQJf7Kt0BQkGZIykAAoJEKcH FyIyz6TpTTYA/0ysxqOA8YYInFnDdp+ZoLM0Djahh4MUyQ3OCpz6U4/kAP9MfgQqCyGJskPe nGsCTrHdcW760UZ3KMge7vAVPw1eD7gzBFuKSn4WCSsGAQQB2kcPAQEHQNf9JkHWQaDR5cRm q0x7ltlUFok5Z8rfCtOZxVITGGyWiPUEGBYIACYCGwIWIQSCyamya7q5U+GZ/OSnBxciMs+k 6QUCX+yrdAUJBmSJ9gCBdiAEGRYIAB0WIQQ2aRv8hQWta5iN4IfgIQ1PG8W1PgUCW4pKfgAK CRDgIQ1PG8W1PnBCAQDX4Yp8i5GA7fZR8gysMIvUEqnewxPv5MVUrzjSxyNM9gEAvShATZq0 bLwrDJXiPvB+8WLvG9SXWgMLbvt8iSJ2wwwJEKcHFyIyz6TpAj4BAPFUzBamR3bW2iTA/s8r WX4sadNSMoD2Cem5PKQ07YzRAPwNdh4EF4XWcmAzHFyei2sp/KFUgNsgJQ8/iKAcDCRxCg== Message-ID: <0dd132cb-a367-35be-66d7-f87aa02a55ee at informatik.tu-muenchen.de> Date: Sun, 3 Jan 2021 10:44:50 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ruyVuXNoT7mbMlMlhYlvZQI0YoX9KB1ky" X-debug-header: local_aliases has suffix Subject: [isabelle] Bootstrap problem in Isabelle2021-RC1: Consumer thread failure: "Isabelle.Session.manager" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 09:44:59 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --ruyVuXNoT7mbMlMlhYlvZQI0YoX9KB1ky Content-Type: multipart/mixed; boundary="UF1PTSk1jyvjoaA985ixJFRym3ndKG6Uz"; protected-headers="v1" From: Florian Haftmann To: Isabelle-Users Mailinglist Message-ID: <0dd132cb-a367-35be-66d7-f87aa02a55ee at informatik.tu-muenchen.de> Subject: Bootstrap problem in Isabelle2021-RC1: Consumer thread failure: "Isabelle.Session.manager" --UF1PTSk1jyvjoaA985ixJFRym3ndKG6Uz Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable Starting from a plain mercurial checkout: $ isabelle build -b Pure ### Building Isabelle/Scala ... Building Pure ... *** Consumer thread failure: "Isabelle.Session.manager" *** I/O error: /srv/data/tum/isabelle/devel/src/Tools/jEdit/dist/Isabelle-jEdit.shasum (Datei oder Verzeichnis nicht gefunden) and then the process hangs. Whereas $ isabelle jedit -b $ isabelle build -b Pure works as expected. Cheers, Florian --UF1PTSk1jyvjoaA985ixJFRym3ndKG6Uz-- --ruyVuXNoT7mbMlMlhYlvZQI0YoX9KB1ky Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYIAB0WIQQ2aRv8hQWta5iN4IfgIQ1PG8W1PgUCX/GSEgAKCRDgIQ1PG8W1 PuQDAP9i5efkGnvlLkwBUoA3bWFWkAG/Z9JTjVngNRU05ZGsSgEAwHKcAqvbsxFJ hcKwmJKxg7LWdRtPagPRIR151l+N1QY= =doSy -----END PGP SIGNATURE----- --ruyVuXNoT7mbMlMlhYlvZQI0YoX9KB1ky-- From makarius at sketis.net Sun Jan 03 11:27:14 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:58934) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw1XW-0006WI-2L (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:27:14 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.166 listed in list.dnswl.dnsbl.ja.net] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:42395) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw1XV-000bcy-jv (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:27:14 +0000 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kw1XU-0004hL-US for isabelle-users at cl.cam.ac.uk; Sun, 03 Jan 2021 11:27:13 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.166 listed in list.dnswl.dnsbl.ja.net] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.166]:41959) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw1XT-000bxY-fg (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:27:12 +0000 Received: from mors-relay-8202.netcup.net (localhost [127.0.0.1]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4D7xLQ1Grqz4VwT; Sun, 3 Jan 2021 12:27:10 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4D7xLQ0vb2z4VwR; Sun, 3 Jan 2021 12:27:10 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7xLP3XPSz8ss8; Sun, 3 Jan 2021 12:27:09 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id AA10EA20E1; Sun, 3 Jan 2021 12:27:08 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Florian Haftmann , Isabelle-Users Mailinglist References: <0dd132cb-a367-35be-66d7-f87aa02a55ee at informatik.tu-muenchen.de> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <9b472dc6-433d-c265-5424-e8cb1bc7ae7f at sketis.net> Date: Sun, 3 Jan 2021 12:27:08 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <0dd132cb-a367-35be-66d7-f87aa02a55ee at informatik.tu-muenchen.de> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160967322884.30561.26877644562421934 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: aUSRSidKEPSJaeEha79to+toS1v5cJeEYoEb09Sa5SRHCBQ= X-debug-header: local_aliases has suffix Subject: Re: [isabelle] Bootstrap problem in Isabelle2021-RC1: Consumer thread failure: "Isabelle.Session.manager" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 11:27:14 -0000 On 03/01/2021 10:44, Florian Haftmann wrote: > Starting from a plain mercurial checkout: > > $ isabelle build -b Pure > ### Building Isabelle/Scala ... > Building Pure ... > *** Consumer thread failure: "Isabelle.Session.manager" > *** I/O error: > /srv/data/tum/isabelle/devel/src/Tools/jEdit/dist/Isabelle-jEdit.shasum > (Datei oder Verzeichnis nicht gefunden) > > and then the process hangs. OK, I have made it more robust here: https://isabelle-dev.sketis.net/rISABELLE03e78b35ebbc Thus it will be in Isabelle2021-RC2, presumably to be published within 1 week. Behind that is a funny trick to get Isabelle/Scala source positions into PIDE markup produced by Isabelle/ML. For example: ML ‹ @{scala echo} "abc" › Now C-hover-click on "echo" will jump to the implementation of that registered Isabelle/Scala function. Registration of such functions works in user-space, using a suitable invocation of "isabelle_scala_service" in etc/settings (e.g. of an add-on component). For Isabelle/Pure it happens in $ISABELLE_HOME/etc/settings like this: isabelle_scala_service 'isabelle.Scala_Functions' Makarius From makarius at sketis.net Sun Jan 03 11:37:39 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:39850) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw1hb-0006mE-20 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:37:39 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.170 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.170]:34343) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw1ha-000gPD-jZ (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:37:39 +0000 Received: from mors-relay8203.netcup.net (localhost [127.0.0.1]) by mors-relay8203.netcup.net (Postfix) with ESMTPS id 4D7xZT4d1Hz8b8x; Sun, 3 Jan 2021 11:37:37 +0000 (UTC) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay8203.netcup.net (Postfix) with ESMTPS id 4D7xZT4FN4z8b6r; Sun, 3 Jan 2021 11:37:37 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D7xZS5GJbz8sgY; Sun, 3 Jan 2021 12:37:36 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 7812EA20E1; Sun, 3 Jan 2021 12:37:35 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Nick Spinale , cl-isabelle-users at lists.cam.ac.uk References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sun, 3 Jan 2021 12:37:35 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160967385562.22529.13625377547297750856 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: djZbaTJJz1jVrGMj+J/WUF0ztJuDPaNSoP/HcZKQul3DQe4= Subject: Re: [isabelle] Apple switching to ARM X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 11:37:39 -0000 On 23/06/2020 16:49, Nick Spinale wrote: > Last fall, I built and ran Isabelle 2019 and all of its dependencies on Arm (aarch64-linux) using Nix [1]. > >> Last I heard, Poly/ML only had an interpreter on ARM, not a compiler, which comes with a big performance loss. > > I did encounter serious performance problems with Poly/ML. From what I can gather from the Poly/ML source, you are correct [2]. > > For reference, my code: https://github.com/nspin/nix-isabelle > > [1] https://nixos.org/features.html > [2] https://github.com/polyml/polyml/blob/0ad5aa87ea7bd8eace41a180e2f5bad588c4635d/configure.ac#L433 In the meantime I have occasionally looked through your scripts and patches from that repository. Current Isabelle2021-RC1 supports arm64-linux (Pi OS) and arm64-darwin (macOS Big Sur) to some extent. Instead of official https://isabelle.in.tum.de/website-Isabelle2021-RC1 this requires to use a repository clone https://isabelle.sketis.net/repos/isabelle/file/Isabelle2021-RC1/README_REPOSITORY --- after the "hg clone" command you can navigate the desired version e.g. via "hg up -r Isabelle2021-RC1". I am still considering how much arm64-darwin will be in the final app bundle Isabelle2021 (February 2021). There will be nothing particular for arm64-linux (or NixOS), though. Makarius From makarius at sketis.net Sun Jan 03 11:53:25 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:40690) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw1wr-0007A0-EG (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:53:25 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [194.59.206.189 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([194.59.206.189]:55341) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw1wq-000WKk-RS (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 11:53:25 +0000 Received: from relay02-mors.netcup.net (localhost [127.0.0.1]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D7xwg4ByRz4Cdk; Sun, 3 Jan 2021 12:53:23 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D7xwg3qRnz7vFj; Sun, 3 Jan 2021 12:53:23 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7xwZ5wZKz8ss1; Sun, 3 Jan 2021 12:53:18 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 1C711A2027; Sun, 3 Jan 2021 12:53:18 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Jasmin Blanchette , cl-isabelle-users References: <501CEDEB-78D2-47AE-B66D-EA3A0B50F1B0 at vu.nl> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sun, 3 Jan 2021 12:53:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <501CEDEB-78D2-47AE-B66D-EA3A0B50F1B0 at vu.nl> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160967479828.29767.9281083661796138731 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: fcYsb2ph99/ArIbCFUCDGOtXV4ver8Vf8iVr2oCYBx4k7VI= Subject: Re: [isabelle] Any fans of "try"? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 11:53:25 -0000 On 26/05/2020 12:29, Jasmin Blanchette via Cl-isabelle-users wrote: > > 3. (Maybe?) Enable Auto Nitpick. > > (Auto Nitpick is a reduced version of Nitpick that doesn't take that much CPU and won't run for more than 5 s. It's useful on nonexecutable conjectures like "hd [] = 0" and other problems with an axiomatic flavor.) I was experimenting with auto_nitpick for Isabelle2021, but have disabled it for Isabelle2021-RC1, see also https://isabelle-dev.sketis.net/rISABELLE52ba78df4088 "disable auto_nitpick for now: spurious problems with non-termination e.g. in HOL-Hoare examples". The deeper problem behind it is the new Isabelle/Scala implementation of Kodkod: it sometimes has problems with parallelism and interrupts. The old external Java process for Kodkod is still there, and actually used by default in "isabelle build" (for robustness and conservatity). Using it in auto-mode is not feasible, especially on Windows. At some point I would like to get Isabelle/Scala Kodkod into proper form as the only version of that tool, see also https://isabelle.sketis.net/repos/kodkodi Then we could also reconsider the auto_nitpick option. (This is not relevant for the Isabelle2021 release in February, but maybe for the one 8-10 months later.) Makarius From makarius at sketis.net Sun Jan 03 12:00:20 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:33484) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw23Y-0007LR-03 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 12:00:20 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.61.103 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.61.103]:48949) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw23X-000s5f-cx (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 12:00:19 +0000 Received: from mors-relay-8403.netcup.net (localhost [127.0.0.1]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D7y4f4mRSz8cfT; Sun, 3 Jan 2021 13:00:18 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4D7y4f43thz8cfS; Sun, 3 Jan 2021 13:00:18 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D7y4d48ysz8sgY; Sun, 3 Jan 2021 13:00:17 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 1C29AA5AA2; Sun, 3 Jan 2021 13:00:17 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Lars-Henrik Eriksson , cl-isabelle-users at lists.cam.ac.uk References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <9cb7551a-72d7-6d60-b8a0-edd4489a39ce at sketis.net> Date: Sun, 3 Jan 2021 13:00:16 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------65503832AF61AD2E923AB091" Content-Language: en-US X-PPP-Message-ID: <160967521725.7701.5235957053504412434 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: dbbarMVyPH9619oVmn66jDjjypIXbmIyc4FOd3PHCLfoJRw= Subject: Re: [isabelle] sledgehammer (or Z3) internal error X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 12:00:20 -0000 This is a multi-part message in MIME format. --------------65503832AF61AD2E923AB091 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 05/05/2020 18:05, Lars-Henrik Eriksson wrote: > The attached theory causes a sledgehammer error in Isabelle 2020. > > The theory is as small as I have been able to make it. Seemingly unrelated things like the datatype declaration, the function p and even the locale names (!) matter. > > Even more odd is that editing the theory in Isabelle and then undoing the edits sometimes causes the error to go away. Loading the theory in a fresh instance of Isabelle always triggers the error, however. Trying this with Isabelle2021-RC1 from https://isabelle.in.tum.de/website-Isabelle2021-RC1 I still see the breakdown: exception Fail raised (line 222 of "~~/src/HOL/Tools/SMT/z3_proof.ML"): Replaying the proof trace produced by Z3 failed: the bound "?0" is undeclared; this indicates a bug in Z3 I don't understand the setup myself. If an expert on Isabelle/Z3 wants to do something about it, we still have 1-2 weeks time on the Isabelle2021 release train. Makarius --------------65503832AF61AD2E923AB091 Content-Type: text/plain; charset=UTF-8; name="Z3bug.thy" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Z3bug.thy" dGhlb3J5IFozYnVnCmltcG9ydHMgTWFpbgpiZWdpbgoKZGF0YXR5cGUgdCA9IGEKCmxvY2Fs ZSBsJzAgPQoKIGZpeGVzIHAgOjogInQgXDxSaWdodGFycm93PiBib29sIgogYXNzdW1lcyAi cChhKSIKCmJlZ2luCiAgZnVuY3Rpb24gZm9vOjogIm5hdCBcPFJpZ2h0YXJyb3c+IGJvb2wi IHdoZXJlCiAgImZvbyB4ID0gKHg9MCBcPG9yPiBmb28geCkiCiAgICBieSBwYXRfY29tcGxl dGVuZXNzIGF1dG8KZW5kCgpsb2NhbGUgbCA9IGwnMCArCiAgYXNzdW1lcyAiZm9vX2RvbSB4 IgpiZWdpbgogIHRoZW9yZW0gImZvbyAwIgogICAgc2xlZGdlaGFtbWVyCigqICJ6MyI6IEEg cHJvdmVyIGVycm9yIG9jY3VycmVkOgogICAgZXhjZXB0aW9uIEZhaWwgcmFpc2VkIChsaW5l IDIyMiBvZiAifn4vc3JjL0hPTC9Ub29scy9TTVQvejNfcHJvb2YuTUwiKToKICAgIFJlcGxh eWluZyB0aGUgcHJvb2YgdHJhY2UgcHJvZHVjZWQgYnkgWjMgZmFpbGVkOiB0aGUgYm91bmQg Ij8wIiBpcyB1bmRlY2xhcmVkCiAgICB0aGlzIGluZGljYXRlcyBhIGJ1ZyBpbiBaMyAqKQpl bmQKCmVuZAo= --------------65503832AF61AD2E923AB091-- From makarius at sketis.net Sun Jan 03 12:03:16 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:50578) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw26O-0007RJ-OE (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 12:03:16 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:43415) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw26O-000IMg-Jl (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 12:03:16 +0000 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kw26N-000537-UR for isabelle-users at cl.cam.ac.uk; Sun, 03 Jan 2021 12:03:16 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.162]:39359) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw26N-000IMS-Kb (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sun, 03 Jan 2021 12:03:15 +0000 Received: from mors-relay-8201.netcup.net (localhost [127.0.0.1]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4D7y823PsNz4R53; Sun, 3 Jan 2021 13:03:14 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4D7y8232Wdz4R40; Sun, 3 Jan 2021 13:03:14 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D7y8127sSz8tFn; Sun, 3 Jan 2021 13:03:13 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id ED50DA5AA2; Sun, 3 Jan 2021 13:03:12 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: "Dr. Brendan Patrick Mahony" , Isabelle References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <823facbe-64dd-24f5-4fcb-0784fcf68205 at sketis.net> Date: Sun, 3 Jan 2021 13:03:12 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160967539311.10005.8656061014919295332 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: cwCs6CAvVrYp7UKABZinosxqDjl3Dd3Gf09F7DZMgzA5qds= X-debug-header: local_aliases has suffix Subject: Re: [isabelle] Custom fonts in browser_info html? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 12:03:16 -0000 On 06/04/2020 02:50, Dr. Brendan Patrick Mahony wrote: > Is there an approved/supported facility for handling symbol glyphs from custom fonts in the html generated in the html files generated by > "build -o browser_info”? > > At first blush it seems to ignore the font information in the symbols file and just expects the glyph to be in IsabelleDejaVuSansMono.ttf. > A rather old thread, but still current: in the past few weeks I have reworked the HTML output a lot, a some details might still change for Isabelle2021 (February 2021). I don't forsee ways to specify fonts right now, but maybe you want to explain your application. Which font, which glyphs are you using in particular? Makarius From makarius at sketis.net Sun Jan 03 14:42:58 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:51862) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw4aw-0003Iu-CV (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 14:42:58 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [194.59.206.189 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([194.59.206.189]:42967) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw4av-000yiA-SF (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 14:42:58 +0000 Received: from relay02-mors.netcup.net (localhost [127.0.0.1]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D81hJ59C8z4CSb; Sun, 3 Jan 2021 15:42:56 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by relay02-mors.netcup.net (Postfix) with ESMTPS id 4D81hJ4mVJz7vFg; Sun, 3 Jan 2021 15:42:56 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4D81hJ0KPtz8ss1; Sun, 3 Jan 2021 15:42:55 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-126.dynamic.mnet-online.de [62.216.204.126]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 67CB4A2060; Sun, 3 Jan 2021 15:42:55 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.126) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Peter Lammich , cl-isabelle-users References: <80b0abfd594e98a1c442edf986780aa0de6ab8d0.camel at in.tum.de> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Sun, 3 Jan 2021 15:42:55 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <80b0abfd594e98a1c442edf986780aa0de6ab8d0.camel at in.tum.de> Content-Type: multipart/mixed; boundary="------------343C72FDDE3DD6DA562B76C5" Content-Language: en-US X-PPP-Message-ID: <160968497560.18306.3768148175342032257 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: 3WTmHrKeeNAvNyfVzeSyCEEcOsimerdEXH6BGfIIJw/OmcE= Subject: Re: [isabelle] Sledgehammer errors (Isabelle 2020) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 14:42:58 -0000 This is a multi-part message in MIME format. --------------343C72FDDE3DD6DA562B76C5 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit On 21/04/2020 19:01, Peter Lammich wrote: > > I get the following error when running sledgehammer on certain > statements. It seems to be reproducible on my machine, where I get the > same output each time. > > I have already reported the "bad SMT term: _ " error from Z3, but the > core dumps from CVC4 are new. > theory Scratch > imports > "Word_Lib.Word_Lemmas" > begin > (* TODO: Move *) > lemma word1_neqZ_is_one: "(a::1 word) ≠ 0 ⟷ a=1" > apply transfer > subgoal for a > apply (cases "bin_last a") > by auto > done > > lemma word1_cases[cases type]: > fixes a :: "1 word" obtains (zero) "a=0" | (one) "a=1" > apply (cases "a=0") > by (auto simp: word1_neqZ_is_one) > > > lemma "from_bool (to_bool a ∧ to_bool b) = a && b" for a b :: "1 > word" > sledgehammer > > (* > > Sledgehammering... > Proof found... > /tmp/isabelle-j65266pl/process1068846226209823883/bash_script6413124: > line 1: 10915 Aborted (core dumped) > /home/j65266pl/opt/Isabelle2020/contrib/cvc4-1.5-5/x86_64-linux/cvc4 -- > full-saturate-quant --inst-when\=full-last-call --inst-no-entail -- > term-db-mode\=relevant --multi-trigger-linear --no-statistics --random- > seed\=1 --lang\=smt2 --continued-execution --tlimit 9990 /tmp/isabelle- > j65266pl/process1068846226209823883/cache-io-6413120 > /tmp/isabelle- > j65266pl/process1068846226209823883/cache-io-6413122 2>&1 > /tmp/isabelle-j65266pl/process1068846226209823883/bash_script6417028: > line 1: 10942 Aborted (core dumped) [...] > "cvc4": The prover crashed > "e": Try this: by (metis (full_types) from_bool_1 to_bool_0 to_bool_1 > word1_neqZ_is_one word_bool_alg.conj_one_right word_log_esimps(1)) (119 > ms) > "z3": A prover error occurred: > bad SMT term: _ > "vampire": Try this: by (metis (full_types) from_bool_neq_0 to_bool_0 > to_bool_1 word1_cases word_and_notzeroD word_bw_same(1)) (54 ms) > > *) Trying a variant of this example with Isabelle2021-RC1, I get soft failures for the SMT tools, without hard crashes. This is for AFP/a31f698ef3f8: Isabelle2021-RC1/bin/isabelle jedit -d afp-devel/thys Scratch.thy I can't say if it is within the intended range of functionality or non-functionality of the SMT tools with the HOL Word library. Makarius --------------343C72FDDE3DD6DA562B76C5 Content-Type: text/plain; charset=UTF-8; name="Scratch.thy" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Scratch.thy" dGhlb3J5IFNjcmF0Y2gKICBpbXBvcnRzCiAgICBXb3JkX0xpYi5Xb3JkX0xlbW1hcwogICAg V29yZF9MaWIuTW9yZV9Xb3JkX09wZXJhdGlvbnMKYmVnaW4KCmxlbW1hIHdvcmQxX25lcVpf aXNfb25lOiAiKGE6OjEgd29yZCkgXDxub3RlcT4gMCBcPGxvbmdsZWZ0cmlnaHRhcnJvdz4g YT0xIiAgCiAgYXBwbHkgdHJhbnNmZXIKICBzdWJnb2FsIGZvciBhCiAgICBhcHBseSAoY2Fz ZXMgImJpbl9sYXN0IGEiKQogICAgYnkgYXV0bwogIGRvbmUKCmxlbW1hIHdvcmQxX2Nhc2Vz W2Nhc2VzIHR5cGVdOiAKICBmaXhlcyBhIDo6ICIxIHdvcmQiIG9idGFpbnMgKHplcm8pICJh PTAiIHwgKG9uZSkgImE9MSIKICBhcHBseSAoY2FzZXMgImE9MCIpCiAgYnkgKGF1dG8gc2lt cDogd29yZDFfbmVxWl9pc19vbmUpCgoKZGVjbGFyZSBbW3NtdF90cmFjZSA9IGZhbHNlXV0K CmxlbW1hICJmcm9tX2Jvb2wgKHRvX2Jvb2wgYSBcPGFuZD4gdG9fYm9vbCBiKSA9IGEgQU5E IGIiIGZvciBhIGIgOjogIjEgd29yZCIKICBzbGVkZ2VoYW1tZXIgW3Byb3ZlcnMgPSBlIHoz IHZlcml0IGN2YzRdCigqClNsZWRnZWhhbW1lcmluZy4uLiAKUHJvb2YgZm91bmQuLi4gCiJ2 ZXJpdCI6IEEgcHJvdmVyIGVycm9yIG9jY3VycmVkOgpTb2x2ZXIgInZlcml0IiBmYWlsZWQg LS0gZW5hYmxlIHRyYWNpbmcgdXNpbmcgdGhlICJzbXRfdHJhY2UiIG9wdGlvbiBmb3IgZGV0 YWlscyAKImN2YzQiOiBBIHByb3ZlciBlcnJvciBvY2N1cnJlZDoKU29sdmVyICJjdmM0IiBm YWlsZWQgLS0gZW5hYmxlIHRyYWNpbmcgdXNpbmcgdGhlICJzbXRfdHJhY2UiIG9wdGlvbiBm b3IgZGV0YWlscyAKImUiOiBUcnkgdGhpczogYnkgKG1ldGlzIChub190eXBlcywgaGlkZV9s YW1zKSBhbmQuaWRlbSBiaXQuY29ual96ZXJvX2xlZnQgYml0LmNvbmpfemVyb19yaWdodCBm cm9tX2Jvb2xfZXFfaWYnIHRvX2Jvb2xfMCB0b19ib29sXzEgd29yZDFfY2FzZXMpICg2ODcg bXMpIAoiejMiOiBUaW1lZCBvdXQKKikKICBieSAobWV0aXMgKG5vX3R5cGVzLCBoaWRlX2xh bXMpIGFuZC5pZGVtIGJpdC5jb25qX3plcm9fbGVmdCBiaXQuY29ual96ZXJvX3JpZ2h0IGZy b21fYm9vbF9lcV9pZicgdG9fYm9vbF8wIHRvX2Jvb2xfMSB3b3JkMV9jYXNlcykKCmVuZAo= --------------343C72FDDE3DD6DA562B76C5-- From walther.neuper at jku.at Sun Jan 03 16:33:48 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:35024) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw6KC-0006Hr-O5 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 16:33:48 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.1 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [140.78.3.66 listed in list.dnswl.dnsbl.ja.net] * 3.3 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS * [217.149.173.63 listed in zen.dnsbl.ja.net] * 0.1 RCVD_IN_SBL RBL: Received via a relay in Spamhaus SBL * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [140.78.3.66 listed in wl.mailspike.net] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:34389) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw6KB-000T0Z-LN (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 16:33:48 +0000 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kw6KB-0007t7-4v for isabelle-users at cl.cam.ac.uk; Sun, 03 Jan 2021 16:33:47 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.1 from SpamAssassin-3.4.4-1885028 * 0.1 RCVD_IN_SBL RBL: Received via a relay in Spamhaus SBL * [217.149.173.63 listed in zen.dnsbl.ja.net] * 3.3 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [140.78.3.66 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [140.78.3.66 listed in wl.mailspike.net] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from emailsecure.uni-linz.ac.at ([140.78.3.66]:13428) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kw6K9-00016i-dQ (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sun, 03 Jan 2021 16:33:46 +0000 Received: from [10.0.0.1] (217-149-173-63.nat.highway.telekom.at [217.149.173.63]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by emailsecure.uni-linz.ac.at (Postfix) with ESMTPSA id 4D84880McZz2PRC for ; Sun, 3 Jan 2021 17:33:44 +0100 (CET) From: Walther Neuper To: "isabelle-users at cl.cam.ac.uk >> isabelle-users" Message-ID: Date: Sun, 3 Jan 2021 17:34:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------337D2D0EC0084F5C65C4C7DD" Content-Language: en-GB X-debug-header: local_aliases has suffix Subject: [isabelle] CfP Theorem Proving Components for Educational Software at CADE-28 X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 16:33:48 -0000 This is a multi-part message in MIME format. --------------337D2D0EC0084F5C65C4C7DD Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Call for Extended Abstracts & Demonstrations ************************************************************************** ThEdu'21 Theorem Proving Components for Educational Software July 2021 http://www.uc.pt/en/congressos/thedu/ThEdu21 ************************************************************************** at CADE-28 The 28th International Conference on Automated Deduction Carnegie Mellon University, Pittsburgh, PA, United States July 11-16, 2021 http://www.cade-28.info ************************************************************************** ThEdu'21 Scope: Computer Theorem Proving is becoming a paradigm as well as a technological base for a new generation of educational software in science, technology, engineering and mathematics. The workshop brings together experts in automated deduction with experts in education in order to further clarify the shape of the new software generation and to discuss existing systems. Invited Talk Gilles Dowek, ENS Paris-Saclay Important Dates * Extended Abstracts: 25 April 2021 * Author Notification: 23 May 2021 * Workshop Day: July 2021 Topics of interest include: * methods of automated deduction applied to checking students' input; * methods of automated deduction applied to prove post-conditions for particular problem solutions; * combinations of deduction and computation enabling systems to propose next steps; * automated provers specific for dynamic geometry systems; * proof and proving in mathematics education. Submission We welcome submission of extended abstracts and demonstration proposals presenting original unpublished work which is not been submitted for publication elsewhere. All accepted extended abstracts and demonstrations will be presented at the workshop. The extended abstracts will be made available online. Extended abstracts and demonstration proposals should be submitted via easychair, https://easychair.org/conferences/?conf=thedu21 formatted according to http://www.easychair.org/publications/easychair.zip Extended abstracts and demonstration proposals should be approximately 5 pages in length and are to be submitted in PDF format. At least one author of each accepted extended abstract/demonstration proposal is expected to attend ThEdu'21 and presents his/her extended abstract/demonstration. Contingency Plans (COVID19) If the pandemic status, at the time of the conference, should force CADE-28 to be implemented as an online event, ThEdu'21 will follow through, as a online workshop. Program Committee Francisco Botana, University of Vigo at Pontevedra, Spain David Cerna, Johannes Kepler University, Austria Joao Marcos, Universidade Federal do Rio Grande do Norte, Brazil (co-chair) Filip Maric, University of Belgrade, Serbia Adolfo Neto, Universidade Tecnológica Federal do Paraná, Brazil Walther Neuper, Graz University of Technology, Austria (co-chair) Pedro Quaresma, University of Coimbra, Portugal (co-chair) Philippe R. Richard, Université de Montréal, Canada (tentative) Vanda Santos, University of Aveiro, Portugal Wolfgang Schreiner, Johannes Kepler University, Austria Jørgen Villadsen, Technical University of Denmark, Denmark Proceedings The extended abstracts and system descriptions will be available in ThEdu'21 Web-page. After presentation at the conference, selected authors will be invited to submit a substantially revised version, extended to 14--20 pages, for publication by the Electronic Proceedings in Theoretical Computer Science (EPTCS). --------------337D2D0EC0084F5C65C4C7DD Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit
              Call for Extended Abstracts & Demonstrations
**************************************************************************
                               ThEdu'21
          Theorem Proving Components for Educational Software
                              July 2021
              http://www.uc.pt/en/congressos/thedu/ThEdu21
**************************************************************************
                              at CADE-28
        The 28th International Conference on Automated Deduction
        Carnegie Mellon University, Pittsburgh, PA, United States
                           July 11-16, 2021
                        http://www.cade-28.info
**************************************************************************


ThEdu'21 Scope:

  Computer Theorem Proving is becoming a paradigm as well as a
  technological base for a new generation of educational software in
  science, technology, engineering and mathematics. The workshop brings
  together experts in automated deduction with experts in education in
  order to further clarify the shape of the new software generation and
  to discuss existing systems.

Invited Talk

  Gilles Dowek, ENS Paris-Saclay

Important Dates

 * Extended Abstracts:  25 April 2021
 * Author Notification: 23 May 2021
 * Workshop Day:        July 2021

Topics of interest include:

 * methods of automated deduction applied to checking students' input;
 * methods of automated deduction applied to prove post-conditions
   for particular problem solutions;
 * combinations of deduction and computation enabling systems to
   propose next steps;
 * automated provers specific for dynamic geometry systems;
 * proof and proving in mathematics education.

Submission

  We welcome submission of extended abstracts and demonstration
  proposals presenting original unpublished work which is not been
  submitted for publication elsewhere.
 
  All accepted extended abstracts and demonstrations will be presented
  at the workshop. The extended abstracts will be made available
  online.
 
  Extended abstracts and demonstration proposals should be submitted
  via easychair, https://easychair.org/conferences/?conf=thedu21
  formatted according to
  http://www.easychair.org/publications/easychair.zip
 
  Extended abstracts and demonstration proposals should be approximately
  5 pages in length and are to be submitted in PDF format.
 
  At least one author of each accepted extended abstract/demonstration
  proposal is expected to attend ThEdu'21 and presents his/her extended
  abstract/demonstration.

Contingency Plans (COVID19)

  If the pandemic status, at the time of the conference, should force
  CADE-28 to be implemented as an online event, ThEdu'21 will follow
  through, as a online workshop.

Program Committee

  Francisco Botana, University of Vigo at Pontevedra, Spain
  David Cerna, Johannes Kepler University, Austria
  Joao Marcos, Universidade Federal do Rio Grande do Norte, Brazil (co-chair)
  Filip Maric, University of Belgrade, Serbia
  Adolfo Neto, Universidade Tecnológica Federal do Paraná, Brazil
  Walther Neuper, Graz University of Technology, Austria (co-chair)
  Pedro Quaresma, University of Coimbra, Portugal (co-chair)
  Philippe R. Richard, Université de Montréal, Canada (tentative)
  Vanda Santos, University of Aveiro, Portugal
  Wolfgang Schreiner, Johannes Kepler University, Austria
  Jørgen Villadsen, Technical University of Denmark, Denmark

Proceedings

  The extended abstracts and system descriptions will be available in
  ThEdu'21 Web-page. After presentation at the conference, selected
  authors will be invited to submit a substantially revised version,
  extended to 14--20 pages, for publication by the Electronic
  Proceedings in Theoretical Computer Science (EPTCS).

--------------337D2D0EC0084F5C65C4C7DD-- From isabelle-users at starkeffect.com Sun Jan 03 16:35:04 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:36252) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw6LQ-0006Kd-C2 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 16:35:04 +0000 X-Cam-SpamDetails: score -0.4 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from cloud2.starkeffect.com ([45.55.83.152]:58458) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtp id 1kw6LP-000Tu2-JS (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 16:35:04 +0000 Received: from home.starkeffect.com (ool-18b963f6.dyn.optonline.net [24.185.99.246]) by cloud2.starkeffect.com (Postfix) with ESMTPSA id 574CE3F4F2; Sun, 3 Jan 2021 16:35:00 +0000 (UTC) To: cl-isabelle-users at lists.cam.ac.uk References: <32ec16b6-59ba-b9d1-297e-837282883d8a at starkeffect.com> <1164ddec-09e6-4f95-e2e7-baf353963d84 at sketis.net> From: "Eugene W. Stark" Message-ID: <738aea18-e17c-c34b-9f49-7211f5df40fb at starkeffect.com> Date: Sun, 3 Jan 2021 11:34:53 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <1164ddec-09e6-4f95-e2e7-baf353963d84 at sketis.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [isabelle] Isabelle2021-RC0: Java/VM monitor X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list Reply-To: stark at cs.stonybrook.edu List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 16:35:04 -0000 I just tried it in Isabelle2021-RC1 and the behavior seems the same. I cannot connect the console to the Isabelle/JEdit VM. Now running under Ubuntu 20.04 LTS (previous attempts were under 18.04). On 1/1/21 4:38 AM, Makarius wrote: > On 04/12/2020 23:56, Eugene W. Stark wrote: >> After attending Makarius' presentation earlier today, I tried to use the Java/VM monitor in Isabelle2021-RC0. >> Two issues arose: >> >> Big issue: Could not convince JConsole to connect to the Isabelle/JEdit Java VM. Local connection >> failed. JConsole documentation suggests that it should be possible for a user to connect to >> local JVM instances that are running under the same user ID, but this did not seem to work. >> SSH connections are not an option, because I do not enable password authentication via SSH and >> there seems to be no provision for public key authentication. > > How does this work in Isabelle2021-RC1? > > The standard "jconsole" tool has some complexity and fragility in connecting > to processes (local or remote). > > In > https://isabelle.sketis.net/repos/isabelle/file/Isabelle2021-RC1/src/Pure/Tools/java_monitor.scala > I have taken over more responsibility for the monitor, trying to make it more > robust. > > >> Smaller issue: The "Help" link to the "Online User Guide" for JConsole is stale. If I run JConsole >> from shell level (this presumably does not run the version that is part of the Isabelle distribution), >> then the same menu selection does not result in a stale link. > > This is beyond my responsibility. The situation might change again with a > future version of OpenJDK. > > > Makarius > From mathias.fleury12 at gmail.com Sun Jan 03 17:18:53 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:47974) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kw71p-0007X4-QP (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 17:18:53 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885028 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.218.54 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in * digit * [mathias.fleury12[at]gmail.com] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mathias.fleury12[at]gmail.com] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [209.85.218.54 listed in wl.mailspike.net] * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-ej1-f54.google.com ([209.85.218.54]:43367) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kw71p-000WdT-kK (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 17:18:53 +0000 Received: by mail-ej1-f54.google.com with SMTP id jx16so33780332ejb.10 for ; Sun, 03 Jan 2021 09:18:53 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=PeAikVI9JnyzxWOwaR3qwTcXis1l6t3LxvZ3mFkFtew=; b=NK/pgz+/ChGNI8wcPAhYYv4Cd2dmUzAIV8sk2/wWnp1ITcBSnQa0ZkbcR7U/2QdOar KvosvSzlLUISZOHW3ZlQT0ZU1Wnbl7MMXiJKDP5oVyd6SiP4tR4UP1eSByWpYVWO7WC0 gDZpHPXSQv9cwIOnJbQ7Ut0LUScpbt49vWHjFxQrnMRweG753/9PBMx4E7nv7V3t6v0l SlOsy7janIGLHftsjWyv1ew6mNN+UUrf8VvV/v0mOu1uBnJ6dQiUjhPmfhm+FAJUB1jk +/gdQjYzgmAIyTsIh3wn3NJiT8IXkw7i97R+Lm2NX9716+Yv6uWrWhCd3H1EWyBZ30lU q0jQ== X-Gm-Message-State: AOAM5317r2B7JwxQiGvEf0AEa+ns0UKRLWtx3zUCh2cVrJRZELq0O+kz ag90qZvHL6uYYHE0GSRQ6zEGZg2/P94P X-Google-Smtp-Source: ABdhPJyu3sIlwd8FVCcug7Gw0bntRqKvI7E7+Z4FpZcLDAEHVpE3kz6cJ/SGCmZ18X4sq0kCZxGGuA== X-Received: by 2002:a17:906:65a:: with SMTP id t26mr56734723ejb.394.1609694333021; Sun, 03 Jan 2021 09:18:53 -0800 (PST) Received: from ?IPv6:2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd? ([2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd]) by smtp.gmail.com with ESMTPSA id ck27sm42783184edb.13.2021.01.03.09.18.52 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 03 Jan 2021 09:18:52 -0800 (PST) To: cl-isabelle-users at lists.cam.ac.uk References: <80b0abfd594e98a1c442edf986780aa0de6ab8d0.camel at in.tum.de> From: Mathias Fleury Message-ID: <73778596-bb50-e9bc-ffe4-fe7ab9f17b5e at gmail.com> Date: Sun, 3 Jan 2021 18:18:51 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Subject: Re: [isabelle] Sledgehammer errors (Isabelle 2020) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 17:18:53 -0000 Thanks for revisiting that thread. > Trying a variant of this example with Isabelle2021-RC1, I get soft failures > for the SMT tools, without hard crashes. This is for AFP/a31f698ef3f8: > > Isabelle2021-RC1/bin/isabelle jedit -d afp-devel/thys Scratch.thy > > > I can't say if it is within the intended range of functionality or > non-functionality of the SMT tools with the HOL Word library. The Z3 errors are expected, the CVC4 are not. I am working on it -- CVC4 is producing warnings that are not properly ignored. Mathias > > > Makarius From kuba at kadziolka.net Sun Jan 03 23:58:18 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:39846) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwDGM-0001Pz-Ei (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 23:58:18 +0000 X-Cam-SpamDetails: score -0.1 from SpamAssassin-3.4.4-1885028 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from pat.zlotemysli.pl ([37.59.186.212]:45872) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtp id 1kwDGL-000VWX-m9 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 03 Jan 2021 23:58:18 +0000 Received: (qmail 10298 invoked by uid 1009); 4 Jan 2021 00:58:17 +0100 Received: from 188.123.215.55 (kuba at kadziolka.net@188.123.215.55) by pat.zlotemysli.pl (envelope-from , uid 1002) with qmail-scanner-2.08st (clamdscan: 0.98.6/26036. spamassassin: 3.4.0. perlscan: 2.08st. Clear:RC:1(188.123.215.55):. Processed in 0.011912 secs); 03 Jan 2021 23:58:17 -0000 Received: from unknown (HELO localhost) (kuba at kadziolka.net@188.123.215.55) by pat.zlotemysli.pl with SMTP; 4 Jan 2021 00:58:17 +0100 Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 From: =?utf-8?q?Jakub_K=C4=85dzio=C5=82ka?= To: Date: Mon, 04 Jan 2021 00:31:33 +0100 Message-Id: Subject: [isabelle] Go-to-definition doesn't work when exploring library. X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jan 2021 23:58:18 -0000 Dear Isabelle users, inside of jEdit, I can Ctrl+click to view the definition of anything I use in my theory. Sometimes, this will take me to a file inside ~~/src/HOL, and in those files, this mechanism doesn't work anymore. I suspect this has something to do with the error at the top of the theory file: Cannot update finished theory "HOL.Rings" Is this a misconfiguration on my part, or is it an unavoidable bug? Currently, I can cope by temporarily including the constant or type I'm interested in the theory I'm working on, but it's cumbersome and can easily break if a name is defined in multiple places. I suppose another workaround would be to start jedit with the -l Pure option, so that HOL gets reprocessed on startup instead of loading a heap image. In my case, this is unworkable, as I'm actually interested in following around the definitions in HOL-Analysis and HOL-Algebra, which I include in a custom session to avoid re-checking these heavy sessions every time I load them. I would be interested in any other workarounds or fixes. Kind regards, Jakub K=C4=85dzio=C5=82ka From buday.gergely.istvan at szie.hu Mon Jan 04 08:46:00 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:57120) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwLV2-0005f9-JH (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 08:46:00 +0000 X-Cam-SpamDetails: score -2.6 from SpamAssassin-3.4.4-1885045 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [192.188.242.67 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mx2.szie.hu ([192.188.242.67]:47140) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtp id 1kwLV1-000F4O-lV (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 08:46:00 +0000 Received: from webmail.ih.szie.hu (wmail.ih.szie.hu [IPv6:2001:738:5800:1020:192:188:242:48]) by mx2.szie.hu (Postfix) with ESMTP id 4D8Tjp38tmzKLK5g for ; Mon, 4 Jan 2021 09:45:50 +0100 (CET) Received: from [10.2.11.9] (unknown [193.225.54.2]) by webmail.ih.szie.hu (Postfix) with ESMTPSA id 87C6414005E for ; Mon, 4 Jan 2021 09:46:00 +0100 (CET) To: "cl-isabelle-users at lists.cam.ac.uk" Message-ID: <7f54f8e7-c1c6-3af4-2bd0-9764046c85e4 at szie.hu> Date: Mon, 4 Jan 2021 09:45:58 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.5.1 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2; format=flowed Content-Transfer-Encoding: 7bit Content-Language: hu Subject: [isabelle] low-level code formalisations in Isabelle X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list From: Buday Gergely via Cl-isabelle-users Reply-To: Buday Gergely List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2021 08:46:00 -0000 Hi, what architectures can I target for a verifying compiler using Isabelle? What I see is Isabelle specifications for WebAssembly: https://www.cl.cam.ac.uk/~caw77/papers/mechanising-and-verifying-the-webassembly-specification.pdf and ARM, RISC-V and CHERI-MIPS: https://www.cl.cam.ac.uk/~nk480/sail-submitted.pdf Is there anything else? And, what are the limitations of the above? Any experience report is welcome. - Gergely From makarius at sketis.net Mon Jan 04 12:37:38 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:37420) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwP7C-00080z-6a (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 12:37:38 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885045 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.0 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.162]:45669) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwP7B-000kkS-jb (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 12:37:38 +0000 Received: from mors-relay-8201.netcup.net (localhost [127.0.0.1]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4D8ZsC6DTWz4NR9; Mon, 4 Jan 2021 13:37:35 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4D8ZsC5qrsz4NFj; Mon, 4 Jan 2021 13:37:35 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4D8ZsB6mlpz8sgY; Mon, 4 Jan 2021 13:37:34 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-132.dynamic.mnet-online.de [62.216.204.132]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 87E73A2117; Mon, 4 Jan 2021 13:37:34 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.132) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: =?UTF-8?B?SmFrdWIgS8SFZHppb8WCa2E=?= , cl-isabelle-users at lists.cam.ac.uk References: From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: Date: Mon, 4 Jan 2021 13:37:34 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <160976385470.749.13278075162904691803 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: TNgyoOwnur8Ujh19qREaqxI63AR4RbWoLd4yFyi4ugEcOZU= Subject: Re: [isabelle] Go-to-definition doesn't work when exploring library. X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2021 12:37:38 -0000 On 04/01/2021 00:31, Jakub Kądziołka wrote: > Dear Isabelle users, > > inside of jEdit, I can Ctrl+click to view the definition of anything I > use in my theory. Sometimes, this will take me to a file inside > ~~/src/HOL, and in those files, this mechanism doesn't work anymore. > > I suspect this has something to do with the error at the top of the > theory file: > > Cannot update finished theory "HOL.Rings" > > Is this a misconfiguration on my part, or is it an unavoidable bug? > > Currently, I can cope by temporarily including the constant or type I'm > interested in the theory I'm working on, but it's cumbersome and can > easily break if a name is defined in multiple places. > > I suppose another workaround would be to start jedit with the -l Pure > option, so that HOL gets reprocessed on startup instead of loading a > heap image. In my case, this is unworkable, as I'm actually interested > in following around the definitions in HOL-Analysis and HOL-Algebra, > which I include in a custom session to avoid re-checking these heavy > sessions every time I load them. > > I would be interested in any other workarounds or fixes. You can also try https://search.isabelle.in.tum.de --- it is still somewhat experimental, but already quite usable. Your observation is correct that already loaded (or "finished") theories don't get Prover IDE markup and thus no hyperlinks. This is neither a "bug" nor a "feature": it is merely a limitation of the present approach (since approx. 2011). Many other high-end IDEs have similar limitation, but also add-on mechanisms to overcome it (e.g. IntelliJ IDEA disassembles library jar modules on the spot). One happy day, the Isabelle Prover IDE will be able to do something similar, but it takes time to get there, and one must avoid applying too much force in "fixes" that are apt to devastate a delicate eco-system. Makarius From tals4 at cam.ac.uk Mon Jan 04 17:23:13 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:53252) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwTZZ-0006NN-FO (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:23:13 +0000 X-Cam-AntiVirus: not scanned (internal relaying) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from webmail-1a.csi.cam.ac.uk ([131.111.9.32]:57434) by ppsw-41.csi.cam.ac.uk (ppsw.cam.ac.uk [131.111.8.139]:25) with esmtp id 1kwTZZ-000b0V-RJ (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:23:13 +0000 Received: from [127.0.0.1] (helo=webmail-1.hermes.cam.ac.uk) by webmail-1a.csi.cam.ac.uk with esmtp id 1kwTZZ-0000Lt-Ea (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:23:13 +0000 Received: from cpc108965-cmbg20-2-0-cust533.5-4.cable.virginm.net ([80.5.218.22]) by webmail-1.hermes.cam.ac.uk with HTTP (HTTP/1.1 POST); Mon, 04 Jan 2021 17:23:13 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Mon, 04 Jan 2021 17:23:13 +0000 From: Thomas Sewell To: cl-isabelle-users at lists.cam.ac.uk In-Reply-To: <6fc54bca430696b8850afef815c02801 at cam.ac.uk> References: <6fc54bca430696b8850afef815c02801 at cam.ac.uk> User-Agent: Roundcube Webmail/1.4.10 Message-ID: <59f6bf94248a1f8f929cc3a18180c0e9 at cam.ac.uk> X-Sender: tals4 at cam.ac.uk X-Authenticated-User: tals4 Subject: [isabelle] Fwd: Re: Several questions about the availability of certain specific proof tools for classical reasoning/simplification in Isabelle/HOL X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2021 17:23:13 -0000 Hi Mikhail. I think it's worth mentioning a simple trick relevant to associativity. As you say, the problem is, how do you apply a rewrite of the form "b . c = r" to a goal "a . b . c . d"? It's annoying to have to instruct Isabelle to somehow gather the b and c together. Let's suppose "." is associative and that "a . b . c . d" is syntax for "a . (b . (c . d))". The simple trick is to also derive the rule "b . c . x = r . x". This modified rule will apply to the original goal in normal form without having to first gather "(b . c)" together. The variant form of each rule can usually be derived as a one-liner, since it just amounts to generalising via some congruence and then rewriting into normal form. Here's a worked example for conjunction, which works in Isabelle/HOL: lemma less_and_greater: fixes x :: nat shows "(x < y ∧ x > y) = False" by auto lemmas conj_left_cong = conj_cong[OF _ refl] lemmas less_and_greater2 = less_and_greater[THEN conj_left_cong, simplified conj_assoc] lemma fixes x :: nat shows "~ (A ∧ (B ∧ x < y) ∧ (x > y ∧ x ≤ Suc 12) ∧ C)" apply (simp only: conj_assoc) apply (simp only: less_and_greater2) apply simp done From time to time somebody asks about rewriting modulo associativity and commutativity, which might sometimes be really useful. My understanding is that this problem has been studied in other tools, that solutions exist, that performance is a major issue, and that no implementation for Isabelle currently exists. Cheers, Thomas. On 2020-12-27 15:58, Mikhail Chekhov wrote: > Dear All, > > I have several questions about the availability of certain types of > proof methods for Isabelle (I guess, these questions can also be seen > as reference requests). > > I am working on a certain applied formalization study. This work is > carried out in the object logic ZFC in HOL. The type of reasoning that > it requires is very similar to the type of reasoning that is used in > HOL-Algebra. When I started my work on this project, I relied, > primarily, on the tools that combine classical reasoning with > simplification, such as _auto_. However, I found myself struggling > more and more in my attempts to provide appropriate sets of > simp/intro/dest/elim rules that would not cause significant delays and > loops when solving typical set-based goals. Besides, my proof code > seemed to be unnecessarily verbose. However, please do not view this > as a criticism of the aforementioned proof tools: I can hardly claim > to have an extensive knowledge of the analytical properties of the > involved algorithms. > > ---------------------------------------------------------------------------------- > > Problem 1 > > From the manual of the simplifier: "conditions in conditional rewrite > rules are solved recursively before the rewrite rule is applied". > Empirically, I have established that it could be useful to be able to > treat rewriting in the same manner as intro-resolution, allowing the > side conditions of the rewrite rules to be resolved both using > rewriting or intro-resolution after the application of the rewrite > rule to a given goal (of course, this is also meant to be done > recursively). I devised a prototype method based on this algorithm (CS > in https://gitlab.com/user9716869/Isabelle-Complement-Library). For my > own needs, practically, I found this type of 'coupling' of rewriting > and intro-resolution to be exceptionally capable at solving complex > goals in comparison with some of the existing tools that seem to > combine simplification and classical reasoning that I tried before (by > now, for my own needs, I rely on the methods provided by CS almost > exclusively in a reasonably sizeable development). > > Unfortunately, my formal background in the area of the algorithms that > are used in the common proof tools is, somewhat, limited (I have > always been far more interested in the applications of the proof > assistants to the development of formally verified software and > applied formalization of mathematics, rather than the technology > behind them). Thus, I have little doubt that I have reinvented the > wheel. My primary question is whether any of the existing proof tools > already provide access to the algorithm that I have described. > > ---------------------------------------------------------------------------------- > > Problem 2 > > I would like to know if there exist any reasonably generic proof tools > for Isabelle that would take into account associativity implicitly. > Somehow, when performing rewriting, I would like to be able to treat > ((ab)c)d, (ab)(cd), ... as members of the same equivalence class with > respect to the relation induced by the associativity. Therefore, if > there is an additional rewrite rule b(cd)=e (again, treated with > respect to the same equivalence relation), it would be immediately > applicable to any form of abcd, immediately yielding ae. Intuitively, > it seems that this strategy could work rather well for the types of > problems that I am facing regularly, and I am considering implementing > it within the scope of the aforementioned proof tools. However, I am > slightly concerned about whether there already exist canonical > implementations or better alternative solutions (please note, however, > that my setting is, effectively, a partial semigroup). > > Kind Regards, > Mikhail Chekhov From lor.gheri at gmail.com Mon Jan 04 17:53:54 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:41234) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwU3G-0007X6-6I (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:53:54 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885045 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.166.177 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.166.177 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [lor.gheri[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 LOTS_OF_MONEY Huge... sums of money X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-il1-f177.google.com ([209.85.166.177]:42606) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kwU3F-000tVr-QM (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:53:54 +0000 Received: by mail-il1-f177.google.com with SMTP id 2so26091900ilg.9 for ; Mon, 04 Jan 2021 09:53:53 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=6jjsm8W9vWEaAFEbucpW+jvVlbOogEA823+wuEwIaPY=; b=Ey0Tiq6iC61QqaeExXVhhFXj6jQ0aEdH7/gZdUXOBWLvXCX0hTKUrBXu1zh0pgNf8g MPxKrTIlKJBJaphITMIrZbYaBz/9XlfAafUEDTY95PRtuxbk2dlTBhbDzUxBHrjkgUZP tkpXLI4ay5ILXyathX40AZiU/B7R40rIwpPQj56xUzaxTWpw5wUKPCScl5SOWDfeKnkI Tr7Csi6xhdHuQ8VeP8idaCqAnsh4jtwnJruYVxKv0Dh+DSe787ZFYuYhDcNUMZ7crP+Z d5lEKY9o9+i345fxbPEG6Q/PK5IkG3oupacFTaBbs8VJstxoZP60CW0QQ6rY1YTsZ4pJ eTXA== X-Gm-Message-State: AOAM531iW9q31UhiimEr4ws1TO//Nqc6UlDgnHERguNvY4368Ih56wjC WZQ0MGwo/R6dBtyoTm3Y4e6KasKeT/s+ItaXNSEHEjOfqbM= X-Google-Smtp-Source: ABdhPJyJTdIBCLu40n4Y/sfVdB2Mp+lymKyVubuhZU7iou0jZKSeQz00a22nOlZtEWEUmeLhgmFoGBO+eCtxr5ENRXM= X-Received: by 2002:a92:cb44:: with SMTP id f4mr71145024ilq.131.1609782831862; Mon, 04 Jan 2021 09:53:51 -0800 (PST) MIME-Version: 1.0 From: Lorenzo Gheri Date: Mon, 4 Jan 2021 17:53:41 +0000 Message-ID: To: cl-isabelle-users at lists.cam.ac.uk Content-Type: multipart/alternative; boundary="000000000000dbd64805b816c5a5" X-Mailman-Approved-At: Tue, 05 Jan 2021 10:10:58 +0000 Subject: [isabelle] Research assistant/associate position at Imperial College London X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2021 17:53:54 -0000 --000000000000dbd64805b816c5a5 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear All, we are hiring a Research Assistant/Associate at the Mobility Reading Group, Imperial College London. We welcome applicants with strong interest in programming language mechanisation, design and implementation, formal semantics, type theory and concurrency theory. Interested candidates are encouraged to send an informal message to Prof. Nobuko Yoshida: n.yoshida at imperial.ac.uk Please find the full detail of the open position below. Best, Lorenzo ------------------------------------------------------------ Department of Computing, Imperial College London Research Assistant/Associate Position (Full Time) =C2=A336,045 -- =C2=A348,340 per annum Reference: ENG01520 Fixed-term: 2 years (with a possible 24 month extension) Starting date: as soon as possible (the starting date is flexible) Contact: Nobuko Yoshida (n.yoshida at imperial.ac.uk) The Research Assistant will work under the EPSRC Established Career Fellowship Project, POST: Protocols, Observabilities and Session Types. Imperial College London provides a flexible arrangement to be able to start and work remotely until we reopen the campus. It is also flexible for the starting date. Please contact Nobuko Yoshida (n.yoshida at imperial.ac.uk), Imperial College London if you would like to apply to the position to have informal discussions. Details: https://www.imperial.ac.uk/jobs/description/ENG01520/research-assistant-res= earch-associate ------------------------------------------------------------ The project has particular emphasis on putting theory into practice, by embedding session types in a range of programming languages and applying them to case studies; or developing the links between session types and other areas of theoretical computer science. The research programme includes collaboration with several companies and organisations. Candidates for the postdoc position will need to have expertise in either: 1. programming language design and implementation; or 2. formal semantics, type theory and concurrency theory Different positions will be suitable for different points on the theory/practice spectrum. We are especially interested in candidates with a combination of theoretical and practical skills. For more details, see http://mrg.doc.ic.ac.uk. The focus of Imperial College London Group is theories and applications of (Multiparty) Session Types which include: -- Go, Rust, TypeScript, Scala, F*, F#, Erlang, Haskell, OCaml, Java, MPI-C and Python; -- session types theories such as Automata Theories, Game Semantics, Implicit Complexity, Linear Logic and Concurrency Theory -- mechanisation of session types meta-theory (Coq, Isabelle, Agda, etc) -- other applications such as blockchains and robotics The contact person is Professor Nobuko Yoshida, Imperial College London (n.yoshida at imperial.ac.uk) Closing date: 29th March 2021, please contact Nobuko Yoshida ( n.yoshida at imperial.ac.uk) earlier if you would like to apply to the position even if you wish to start later -- email accepted anytime from today. --000000000000dbd64805b816c5a5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear All,

we are hiring a Re= search Assistant/Associate at the Mobility Reading Group, Imperial College = London. We welcome applicants with strong interest in programming language = mechanisation, design and implementation, formal semantics, type theory and= concurrency theory.

Interested candidates are enc= ouraged to send an informal message to Prof. Nobuko Yoshida: n.yoshida at imperial.ac.uk

Please find the full detail of the open position below.
=
Best,
Lorenzo

------------------------------------------------------------

Department of Computing, Imperial College London

Research Assistant/Associate Position (Full Time)
=C2=A336,045 -- =C2=A348,340 per annum

Reference: ENG01520
Fixed-term: 2 years (with a possible 24 month extension)
Starting date: as soon as possible (the starting date is flexible)
Contact: Nobuko Yoshida (n.yoshida at imperial.ac.uk)

The Research Assistant will work under the EPSRC Established Career Fellowship Project, POST: Protocols, Observabilities and Session Types.

Imperial College London provides a flexible arrangement to be able=20 to start and work remotely until we reopen the campus. It is also=20 flexible for the starting date.

Please contact Nobuko Yoshida (n.yoshida at imperial.a= c.uk), Imperial College London if you would like to apply to the positi= on to have informal discussions.


------------------------------------------------------------

The project has particular emphasis on putting theory into=20 practice, by embedding session types in a range of programming languages and applying them to case studies; or developing the links between=20 session types and other areas of theoretical computer science. The research programme includes collaboration with several=20 companies and organisations.

Candidates for the postdoc position will need to have expertise in eit= her:

1. programming language design and implementation; or
2. formal semantics, type theory and concurrency theory

Different positions will be suitable for different points on the=20 theory/practice spectrum. We are especially interested in candidates=20 with a combination of theoretical and practical skills.

For more details, see http://mrg.doc.ic.ac.uk.

The focus of Imperial College London Group is theories and application= s of (Multiparty) Session Types which include:

-- Go, Rust, TypeScript, Scala, F*, F#, Erlang, Haskell, OCaml, Java, = MPI-C and Python;

-- session types theories such as Automata Theories, Game Semantics, I= mplicit Complexity, Linear Logic and Concurrency Theory

-- mechanisation of session types meta-theory (Coq, Isabelle, Agda, et= c)

-- other applications such as blockchains and robotics

The contact person is

Professor Nobuko Yoshida, Imperial Col= lege London

Closing date: 29th March 2021, please contact Nobuko Yoshida (n.yoshida at imperial.ac.uk) earlier if you would like to appl= y to the position even if you wish to start later -- email accepted anytime= from today.
--000000000000dbd64805b816c5a5-- From carsten at dcs.bbk.ac.uk Mon Jan 04 17:08:24 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:54610) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwTLE-0005au-Cv (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:08:24 +0000 X-Cam-SpamDetails: score -1.7 from SpamAssassin-3.4.4-1885045 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [193.61.29.4 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.7 URI_DOTEDU Has .edu URI * 0.0 MAY_BE_FORGED Relay IP's reverse DNS does not resolve to IP X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mailer2.dcs.bbk.ac.uk ([193.61.29.4]:57935) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwTLD-000YD8-Jm (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Mon, 04 Jan 2021 17:08:24 +0000 Received: from [192.168.10.134] (193-28-39-130.customers.pinemedia.net [193.28.39.130] (may be forged)) (authenticated bits=0) by mailer2.dcs.bbk.ac.uk (8.15.2+Sun/8.15.2) with ESMTPSA id 104H8Guf014172 (version=TLSv1.2 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 4 Jan 2021 17:08:17 GMT From: Carsten Fuhs Autocrypt: addr=carsten at dcs.bbk.ac.uk; prefer-encrypt=mutual; keydata= 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 SlXpspebUOM1XTs+PJqIqnL37A== To: fscd.conference at dcc.fc.up.pt, cl-isabelle-users at lists.cam.ac.uk, types-announce at lists.seas.upenn.edu, rewriting at ens-lyon.fr, ProofTheory at Lists.Bath.Ac.UK, appsem at lists.tcs.ifi.lmu.de, coq-club at inria.fr, caml-list at inria.fr, clap at groupes.renater.fr Message-ID: <7ad557ae-4b3b-74f6-ae6c-4ca82b4fdac6 at dcs.bbk.ac.uk> Date: Mon, 4 Jan 2021 17:08:16 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.84 on 193.61.29.4 X-Mailman-Approved-At: Tue, 05 Jan 2021 10:11:35 +0000 Subject: [isabelle] FSCD 2021: Second Call for Papers X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2021 17:08:24 -0000 (Apologies for multiple copies of this announcement. Please circulate.) ================================================================== Updated information on: invited speakers, affiliated workshops ================================================================== CALL FOR PAPERS Sixth International Conference on Formal Structures for Computation and Deduction (FSCD 2021) July 17 - July 24, 2021, Buenos Aires, Argentina https://fscd2021.dc.uba.ar/ In-cooperation with ACM SIGLOG and SIGPLAN NOTE: Due to the Covid 19 pandemic situation, the 2021 edition of FSCD and its satellite workshops will be held online. IMPORTANT DATES --------------- All deadlines are midnight anywhere-on-earth (AoE); late submissions will not be considered. Abstract: February 12, 2021 Submission: February 15, 2021 Rebuttal: April 2-5, 2021 Notification: April 19, 2021 Final version: May 3, 2021 INVITED SPEAKERS ---------------- - Zena M. Ariola, University of Oregon https://ix.cs.uoregon.edu/~ariola/ - Nao Hirokawa, JAIST https://www.jaist.ac.jp/~hirokawa/ - Elaine Pimentel, Federal University of Rio Grande do Norte https://sites.google.com/site/elainepimentel/ - Sam Staton, University of Oxford https://www.cs.ox.ac.uk/people/samuel.staton/main.html AFFILIATED WORKSHOPS -------------------- - HoTT/UF: 6th Workshop on Homotopy Type Theory/Univalent Foundations - ITRS: 10th Workshop on Intersection Types and Related Systems - WPTE: 7th International Workshop on Rewriting Techniques for Program Transformations and Evaluation - UNIF: 35th International Workshop on Unification - LSFA: 16th Logical and Semantics Frameworks with Applications - IWC: 10th International Workshop on Confluence - IFIP WG 1.6: 24th meeting of the IFIP Working Group 1.6: Rewriting FSCD (http://fscd-conference.org/) covers all aspects of formal structures for computation and deduction from theoretical foundations to applications. Building on two communities, RTA (Rewriting Techniques and Applications) and TLCA (Typed Lambda Calculi and Applications), FSCD embraces their core topics and broadens their scope to closely related areas in logics, models of computation, semantics and verification in new challenging areas. The suggested, but not exclusive, list of topics for submission is: 1. Calculi: - Rewriting systems (string, term, higher-order, graph, conditional, modulo, infinitary, etc.); - Lambda calculus; - Logics (first-order, higher-order, equational, modal, linear, classical, constructive, etc.); - Proof theory (natural deduction, sequent calculus, proof nets, etc.); - Type theory and logical frameworks; - Homotopy type theory; - Quantum calculi. 2. Methods in Computation and Deduction: - Type systems (polymorphism, dependent, recursive, intersection, session, etc.); - Induction, coinduction; - Matching, unification, completion, orderings; - Strategies (normalization, completeness, etc.); - Tree automata; - Model building and model checking; - Proof search and theorem proving; - Constraint solving and decision procedures. 3. Semantics: - Operational semantics and abstract machines; - Game Semantics and applications; - Domain theory and categorical models; - Quantitative models (timing, probabilities, etc.); - Quantum computation and emerging models in computation. 4. Algorithmic Analysis and Transformations of Formal Systems: - Type Inference and type checking; - Abstract Interpretation; - Complexity analysis and implicit computational complexity; - Checking termination, confluence, derivational complexity and related properties; - Symbolic computation. 5. Tools and Applications: - Programming and proof environments; - Verification tools; - Proof assistants and interactive theorem provers; - Applications in industry; - Applications of formal systems in other sciences. 6. Semantics and Verification in new challenging areas: - Certification; - Security; - Blockchain protocols; - Data Bases; - Deep learning and machine learning algorithms; - Planning. PUBLICATION ----------- The proceedings will be published as an electronic volume in the Leibniz International Proceedings in Informatics (LIPIcs) of Schloss Dagstuhl. All LIPIcs proceedings are open access. SPECIAL ISSUE ------------- Authors of selected papers will be invited to submit an extended version to a special issue of Logical Methods in Computer Science. SUBMISSION GUIDELINES --------------------- The submission site is: https://easychair.org/conferences/?conf=fscd2021 Submissions can be made in two categories. Regular research papers are limited to 15 pages, excluding references and appendices. They must present original research which is unpublished and not submitted elsewhere. System descriptions are limited to 15 pages (including references) and must present new software tools in which FSCD topics play an important role, or significantly new versions of such tools. An archive of the code with instructions on how to install and run the tool must be submitted. In addition, a webpage where the system can be experimented with should be provided. Complete instructions on submitting a paper can be found on the conference web site: https://fscd2021.dc.uba.ar/ One author of an accepted paper is expected to present it at the conference BEST PAPER AWARD BY JUNIOR RESEARCHERS -------------------------------------- The program committee will select a paper in which at least one author is a junior researcher, i.e. either a student or whose PhD award date is less than three years from the first day of the meeting. Other authors should declare to the PC Chair that at least 50% of contribution is made by the junior researcher(s). PROGRAM COMMITTEE CHAIR ----------------------- Naoki Kobayashi, The University of Tokyo fscd2021 at easychair.org PROGRAM COMMITTEE ----------------- M. Ayala-Rincón, Universidade de Brasília S. Berardi, University of Torino F. Blanqui, INRIA E. Bonelli, Stevens Institute of Technology É. Contejean, CNRS, Université Paris-Saclay T. Coquand, University of Gothenburg T. Ehrhard, Université de Paris, CNRS S. Escobar, Univ. Politècnica de València J. Espírito Santo, University of Minho C. Faggian, Université de Paris, CNRS A. Felty, University of Ottawa S. Figueira, Universidad de Buenos Aires M. Fiore, University of Cambridge M. Gaboardi, Boston University S. Ghilezan, University of Novi Sad I. Hasuo, National Institute of Informatics D. Kesner, Université de Paris R. Krebbers, Radboud University Nijmegen T. Kutsia, Johannes Kepler University Linz B. König, University of Duisburg-Essen M. Lenisa, University of Udine N. Nishida, Nagoya University L. Ong, University of Oxford P. Parys, University of Warsaw J. Rehof, TU Dortmund University C. Rocha, Pontificia Univ. Javeriana Cali A. Silva, University College London N. Szasz, Universidad ORT Uruguay A. Tiu, Australian National University S. Winkler, University of Verona H. Yang, KAIST, South Korea CONFERENCE CHAIR ---------------- Alejandro Díaz-Caro, Quilmes Univ. & ICC/CONICET WORKSHOP CHAIRS -------------- Mauricio Ayala-Rincón, Universidade de Brasília Carlos López Pombo, Universidad de Buenos Aires STEERING COMMITTEE WORKSHOP CHAIR -------------------------------- Jamie Vicary, Oxford University PUBLICITY CHAIR --------------- Carsten Fuhs, Birkbeck, University of London FSCD STEERING COMMITTEE ----------------------- Z. Ariola, University of Oregon M. Ayala-Rincón, University of Brasilia C. Fuhs, Birkbeck, University of London H. Geuvers, Radboud University S. Ghilezan, University of Novi Sad S. Guerrini, University of Paris 13 D. Kesner (Chair), University of Paris Diderot H. Kirchner, Inria C. Kop, Radboud University D. Mazza, University of Paris 13 L. Ong, Oxford University J. Rehof, TU Dortmund J. Vicary, Oxford University From kwaxer at mail.ru Tue Jan 05 12:24:13 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:41626) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwlNl-0003yl-Af (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 12:24:13 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.8 from SpamAssassin-3.4.4-1885096 * -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low * trust * [185.5.136.55 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [kwaxer[at]mail.ru] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.8 SHORTENED_URL_HREF RAW: No description available. * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 FROM_EXCESS_BASE64 From: base64 encoded unnecessarily * 2.0 SHORT_SHORTNER Short body with little more than a link to a * shortener X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:44571) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwlNk-000CPR-Rl (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 12:24:13 +0000 Received: from ppsw-41.csi.cam.ac.uk ([2001:630:212:8::e:f41]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kwlNk-0005Tf-GN for isabelle-users at cl.cam.ac.uk; Tue, 05 Jan 2021 12:24:12 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.8 from SpamAssassin-3.4.4-1885096 * -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low * trust * [185.5.136.55 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [kwaxer[at]mail.ru] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.8 SHORTENED_URL_HREF RAW: No description available. * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 FROM_EXCESS_BASE64 From: base64 encoded unnecessarily * 2.0 SHORT_SHORTNER Short body with little more than a link to a * shortener X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from f384.i.mail.ru ([185.5.136.55]:59142) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwlNj-000COr-S7 (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Tue, 05 Jan 2021 12:24:12 +0000 Received: by f384.i.mail.ru with local (envelope-from ) id 1kwlNh-0002zG-AS for isabelle-users at cl.cam.ac.uk; Tue, 05 Jan 2021 15:24:09 +0300 Received: by e.mail.ru with HTTP; Tue, 05 Jan 2021 15:24:09 +0300 To: =?UTF-8?B?aXNhYmVsbGUtdXNlcnNAY2wuY2FtLmFjLnVr?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 Date: Tue, 05 Jan 2021 15:24:09 +0300 X-Priority: 3 (Normal) Message-ID: <1609849449.87124331 at f384.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--6eA87c2C3Cc0fCeFEd06b9AdD8e9C4a51609849449" Authentication-Results: f384.i.mail.ru; auth=pass smtp.auth=kwaxer at mail.ru smtp.mailfrom=kwaxer at mail.ru X-7564579A: 646B95376F6C166E X-77F55803: 119C1F4DF6A9251CA00C606FC2A6EDA1F69902C72A16E08B361EBCE1FD71948E8FD872164937FA4C2B9EFD98AA2F1BDEA7A2C750E6278D58CE5646974BB70184BAA9A7660C677FD0 X-7FA49CB5: 70AAF3C13DB7016878DA827A17800CE7FA5B87766F3C215BD82A6BABE6F325AC08BE7437D75B48FABCF491FFA38154B613377AFFFEAFD269176DF2183F8FC7C0547428DA4700DDEFC2099A533E45F2D0395957E7521B51C2CFCAF695D4D8E9FCEA1F7E6F0F101C6778DA827A17800CE76ABD3380F320B62CEA1F7E6F0F101C674E70A05D1297E1BBC6CDE5D1141D2B1C36AA1DFE210C97D7EF91A1AF1F6B6E7AF2E5E44BCCCB219E9FA2833FD35BB23D9E625A9149C048EE7B96B19DC4093321CB629EEF1311BF91D2E47CDBA5A96583BD4B6F7A4D31EC0BC014FD901B82EE079FA2833FD35BB23D27C277FBC8AE2E8B8C7ADC89C2F0B2A5A471835C12D1D977C4224003CC836476EC64975D915A344093EC92FD9297F6718AA50765F790063747074E5DE1517656A7F4EDE966BC389F395957E7521B51C24C7702A67D5C33162DBA43225CD8A89F890A246B268E114EC6EABA9B74D0DA47B5C8C57E37DE458B4C7702A67D5C3316FA3894348FB808DBCF17F1EDFBC1FB573B503F486389A921A5CC5B56E945C8DA X-C1DE0DAB: 0D63561A33F958A5DB6A40AB5DE85C9B17662658778CDF868919DA152EB10755BDC6A1CF3F042BAD6DF99611D93F60EFAFFDA16987AEDD6B699F904B3F4130E343918A1A30D5E7FCCB5012B2E24CD356 X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D348B532EA2091F4FF6F87F7DC82D8270F091C98E43681ED95AC744765F0163EA0712BF32BFB349E6A11D7E09C32AA3244C7FE6402A2219E18B28A33D3E6F0BF4F2FE8DA44ABE2443F73EB3F6AD6EA9203E X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS329fgu+/vnDhHACkcCQ/COTBEk4eLjMwMg== X-Mailru-MI: 800 X-Mailru-Sender: 90AABAEAC6D05D9C0059E7361210B332DC6C11B7E3116F72A7A2C750E6278D5802041CC97E5F936CCA43210BBDC33209E36A7BE05E38EE12452D60DFD1349882A1ECF5DE1755B44A886A25337CDA41C1F07BF9D40A46FD9C3453F38A29522196 X-Mras: Ok X-Spam: undefined X-debug-header: local_aliases has suffix Subject: [isabelle] =?utf-8?q?Questionnaire_on_deployed_verified_systems?= X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list From: =?UTF-8?B?QWxleGFuZGVyIEtvZ3Rlbmtvdg==?= via Cl-isabelle-users Reply-To: =?UTF-8?B?QWxleGFuZGVyIEtvZ3Rlbmtvdg==?= List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 12:24:13 -0000 ----ALT--6eA87c2C3Cc0fCeFEd06b9AdD8e9C4a51609849449 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkRlYXIgQ29sbGVhZ3VlcywKwqAKQSBncm91cCBvZiB1cyBhcmUgcHJlcGFyaW5nIGEgc3VydmV5 IG9uIHN5c3RlbXMgdGhhdCBoYXZlIGJlZW4gYm90aCBmb3JtYWxseSB2ZXJpZmllZCBhbmQgZGVw bG95ZWQgZm9yIGFjdHVhbCB1c2UuIFRvIG1ha2Ugc3VyZSB3ZSBkbyBub3QgZm9yZ2V0IGFueSBp bXBvcnRhbnQgZGV2ZWxvcG1lbnQsIHdlIGhhdmUgZGV2aXNlZCBhIHF1ZXN0aW9ubmFpcmUuIElm IHlvdSBoYXZlIGV4cGVyaWVuY2Ugd2l0aCBzdWNoIGEgc3lzdGVtLCBwbGVhc2UgaGVscCBieSBm aWxsaW5nIHRoZSBxdWVzdGlvbm5haXJlLgrCoApUaGUgcXVlc3Rpb25uYWlyZSBvbmx5IGluY2x1 ZGVzIGEgZmV3IHF1ZXN0aW9ucyBhbmQgc2hvdWxkIHRha2UgYSBmZXcgbWludXRlcyB0byBmaWxs LiBZb3UgY2FuIGZpbmQgaXQgYXQKwqAgwqAgwqAgwqAgIGh0dHBzOi8vYml0Lmx5LzJMTXhiWkIK wqAKSWYgeW91IGtub3cgb2Ygb3RoZXJzIHdobyBhbHNvIGhhdmUgaW5mb3JtYXRpb24gdG8gY29u dHJpYnV0ZSwgcGxlYXNlIGJyaW5nIHRoZSBxdWVzdGlvbm5haXJlIHRvIHRoZWlyIGF0dGVudGlv bi4KwqAKVGhhbmsgeW91IGluIGFkdmFuY2UgYW5kIGJlc3QgcmVnYXJkcywKQWxleGFuZGVyIEtv Z3RlbmtvdgrCoArCoArCoArCoArCoA== ----ALT--6eA87c2C3Cc0fCeFEd06b9AdD8e9C4a51609849449 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdj48 ZGl2IGlkPSJzdHlsZV8xNjA5ODQ5MjkwMDAzNDAwMjgzNl9CT0RZIj48ZGl2IGNsYXNzPSJjbF84 NTQ3MjEiPjxkaXYgY2xhc3M9ImpzLWhlbHBlcl9tcl9jc3NfYXR0ciBqcy1yZWFkbXNnLW1zZ19t cl9jc3NfYXR0ciI+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNjA5ODQ5MTU5MTcxMzM3NDc4M19CT0RZ X21yX2Nzc19hdHRyIj48ZGl2IGNsYXNzPSJjbF84NTg4NThfbXJfY3NzX2F0dHIiPjxkaXYgY2xh c3M9ImpzLWhlbHBlcl9tcl9jc3NfYXR0cl9tcl9jc3NfYXR0ciBqcy1yZWFkbXNnLW1zZ19tcl9j c3NfYXR0cl9tcl9jc3NfYXR0ciI+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNjA5ODQ5MDgxMTM3NTg1 NDkwMF9CT0RZX21yX2Nzc19hdHRyX21yX2Nzc19hdHRyIj48ZGl2IGNsYXNzPSJjbF84NTA3NTRf bXJfY3NzX2F0dHJfbXJfY3NzX2F0dHIiPjxkaXYgY2xhc3M9ImpzLWhlbHBlcl9tcl9jc3NfYXR0 cl9tcl9jc3NfYXR0cl9tcl9jc3NfYXR0ciBqcy1yZWFkbXNnLW1zZ19tcl9jc3NfYXR0cl9tcl9j c3NfYXR0cl9tcl9jc3NfYXR0ciI+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNjA5ODQ4OTYyMTU0MjE3 ODgwNF9CT0RZX21yX2Nzc19hdHRyX21yX2Nzc19hdHRyX21yX2Nzc19hdHRyIj48ZGl2IGNsYXNz PSJjbF84Nzg3ODhfbXJfY3NzX2F0dHJfbXJfY3NzX2F0dHJfbXJfY3NzX2F0dHIiPjxkaXYgY2xh c3M9ImpzLWhlbHBlcl9tcl9jc3NfYXR0cl9tcl9jc3NfYXR0cl9tcl9jc3NfYXR0cl9tcl9jc3Nf YXR0ciBqcy1yZWFkbXNnLW1zZ19tcl9jc3NfYXR0cl9tcl9jc3NfYXR0cl9tcl9jc3NfYXR0cl9t cl9jc3NfYXR0ciI+PGRpdj48ZGl2IGlkPSJzdHlsZV8xNjA5ODQ4OTEyMTk3OTU1NDgyMl9CT0RZ X21yX2Nzc19hdHRyX21yX2Nzc19hdHRyX21yX2Nzc19hdHRyX21yX2Nzc19hdHRyIj48ZGl2IGNs YXNzPSJjbF84Nzg3MzlfbXJfY3NzX2F0dHJfbXJfY3NzX2F0dHJfbXJfY3NzX2F0dHJfbXJfY3Nz X2F0dHIiPjxkaXY+RGVhciBDb2xsZWFndWVzLDwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj48 ZGl2PkEgZ3JvdXAgb2YgdXMgYXJlIHByZXBhcmluZyBhIHN1cnZleSBvbiBzeXN0ZW1zIHRoYXQg aGF2ZSBiZWVuIGJvdGggZm9ybWFsbHkgdmVyaWZpZWQgYW5kIGRlcGxveWVkIGZvciBhY3R1YWwg dXNlLiBUbyBtYWtlIHN1cmUgd2UgZG8gbm90IGZvcmdldCBhbnkgaW1wb3J0YW50IGRldmVsb3Bt ZW50LCB3ZSBoYXZlIGRldmlzZWQgYSBxdWVzdGlvbm5haXJlLiBJZiB5b3UgaGF2ZSBleHBlcmll bmNlIHdpdGggc3VjaCBhIHN5c3RlbSwgcGxlYXNlIGhlbHAgYnkgZmlsbGluZyB0aGUgcXVlc3Rp b25uYWlyZS48L2Rpdj48ZGl2PiZuYnNwOzwvZGl2PjxkaXY+VGhlIHF1ZXN0aW9ubmFpcmUgb25s eSBpbmNsdWRlcyBhIGZldyBxdWVzdGlvbnMgYW5kIHNob3VsZCB0YWtlIGEgZmV3IG1pbnV0ZXMg dG8gZmlsbC4gWW91IGNhbiBmaW5kIGl0IGF0PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgPGEgaHJlZj0iaHR0cHM6Ly9iaXQubHkvMkxNeGJaQiIgdGFyZ2V0PSJfYmxhbmsi Pmh0dHBzOi8vYml0Lmx5LzJMTXhiWkI8L2E+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2Pklm IHlvdSBrbm93IG9mIG90aGVycyB3aG8gYWxzbyBoYXZlIGluZm9ybWF0aW9uIHRvIGNvbnRyaWJ1 dGUsIHBsZWFzZSBicmluZyB0aGUgcXVlc3Rpb25uYWlyZSB0byB0aGVpciBhdHRlbnRpb24uPC9k aXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2PlRoYW5rIHlvdSBpbiBhZHZhbmNlIGFuZCBiZXN0IHJl Z2FyZHMsPC9kaXY+PC9kaXY+PGRpdiBkYXRhLXNpZ25hdHVyZS13aWRnZXQ9ImNvbnRhaW5lciI+ PGRpdiBkYXRhLXNpZ25hdHVyZS13aWRnZXQ9ImNvbnRlbnQiPjxkaXY+PGRpdj5BbGV4YW5kZXIg S29ndGVua292PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+ PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2PiZuYnNwOzwvZGl2 PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PC9kaXY+PC9kaXY+PC9k aXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2PiZu YnNwOzwvZGl2PjwvQk9EWT48L0hUTUw+Cg== ----ALT--6eA87c2C3Cc0fCeFEd06b9AdD8e9C4a51609849449-- From eberlm at in.tum.de Tue Jan 05 12:40:37 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:46976) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwldd-0005nf-EG (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 12:40:37 +0000 X-Cam-SpamDetails: score -2.4 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [131.159.0.8 listed in list.dnswl.dnsbl.ja.net] * 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [131.159.0.8 listed in wl.mailspike.net] * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-out1.in.tum.de ([131.159.0.8]:39667 helo=mail-out1.informatik.tu-muenchen.de) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwldc-000ltn-ko (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 12:40:37 +0000 Received: by mail.in.tum.de (Postfix, from userid 107) id 4FDDD1C148E; Tue, 5 Jan 2021 13:40:34 +0100 (CET) Received: (Authenticated sender: eberlm) by mail.in.tum.de (Postfix) with ESMTPSA id 96C4E1C148D for ; Tue, 5 Jan 2021 13:40:29 +0100 (CET) (Extended-Queue-bit tech_uuamv at fff.in.tum.de) To: "cl-isabelle-users at lists.cam.ac.uk" From: Manuel Eberl Message-ID: <4c25801c-0735-acc9-3133-b9cfdcf8077c at in.tum.de> Date: Tue, 5 Jan 2021 13:40:28 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.3 MIME-Version: 1.0 Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms010901060805080705020603" Subject: [isabelle] Questions about "transfer" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 12:40:37 -0000 This is a cryptographically signed message in MIME format. --------------ms010901060805080705020603 Content-Type: text/plain; charset=utf-8 Content-Language: en-US-large Content-Transfer-Encoding: quoted-printable Hello, I recently did some experiments with the "transfer" command, but there are a few things that I don't quite understand, so here are a few questio= ns: 1. It seems to me that "transfer" always transfers theorems "left-to-right". For the "transferred" attribute, there is "untransferred" =E2=80=93 is there a similar thing for "transfer" as well= ? 2. Relatedly, is there an easy idiomatic way to use "flipped" relators? The following does not work: lemma assumes [transfer_rule]: "rel_set r X Y" shows "rel_set (=CE=BBy x. r x y) Y X" by transfer_prover 3. Sometimes, it is more convenient to prove transfer rules for functions following the pattern lemma assumes [transfer_rule]: "r1 a b" "r2 c d" shows "r3 (f a c) (f' b d)" but if I declare that lemmas as a transfer_rule, it is not used. I have to explicitly prove "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" from this for= it to be used. Is there some way around this? 4. There is currently no relator for measures. I came up with the following one, which works well for my purposes, but I think it is not a good relator because it only makes sense for bi-unique relators on the values. definition rel_measure :: "('a =E2=87=92 'b =E2=87=92 bool) =E2=87=92 ('a= measure =E2=87=92 'b measure =E2=87=92 bool)" where "rel_measure r M1 M2 =E2=9F=B7 rel_set r (space M1) (space M2) =E2=88=A7 rel_set (rel_set r) (sets M1) (sets M2) =E2=88=A7 (rel_set r =3D=3D=3D> (=3D)) (emeasure M1) (emeasure M2)" The definition of rel_pmf suggests something involving product measures would be the right way to go. On a related note: suppose I defined my simple relator and then later on someone else defines another relator for measures. Would the rules then clash? Would one have to remove all the rules for my relator for things to still work smoothly? 5. Is there any trick for proving transfer rules for constants defined by "inductive" or "fun" that I am unaware of? Doing the induction proofs manually is very tedious. 6. The constant "has_derivative" is not parametric (I think) because e.g. for "(f has_derivative D) at_top" you get "Lim (=CE=BBx. x)", which equal to "THE x. False". However, in practice, F is always of the form "at x within A" and then has_derivative is parametric. But if I prove the transfer rule (r =3D=3D=3D> r) =3D=3D=3D> (r =3D=3D=3D> r) =3D=3D=3D> r =3D=3D=3D> re= l_set r =3D=3D=3D> (=3D)) (=CE=BBf D x A. (f has_derivative D) (at x within A)) (=CE=BBf D x A. (f has_derivative D) (at x within A)) for some suitable relator r, it does not get used. The transfer package insists on a relator for "has_derivative". Of course, if I do an auxiliary definition for this and fold it before applying transfer, it works, but then I have a useless auxiliary function cluttering the namespace. 7. In measure theory, there is the definition nn_integral :: 'a measure =E2=87=92 ('a =E2=87=92 ennreal) =E2=87=92 en= nreal nn_integral M f =3D Sup (simple_integral M ` {g. simple_function M g =E2=88=A7 g =E2=89=A4 f}) I was able to prove lemma transfer_nn_integral [transfer_rule]: assumes [transfer_rule]: "bi_unique r" shows "(rel_measure r =3D=3D=3D> (r =3D=3D=3D> (=3D)) =3D=3D=3D> (=3D))= nn_integral nn_integral" but I needed some trickery to avoid "bi_total r" due to the use of "Collect". The reason why it works is that "simple_integral" only evaluates the function on values from "space M", so we can replace the set in question by {g. simple_function M g =E2=88=A7 (=E2=88=80x. x =E2=88=89 space M =E2=9F= =B6 f x =3D 0) =E2=88=A7 =E2=88=80x=E2=88=88space M. g x =E2=89=A4 f x} which can be shown (with quite a bit of pain!) to be parametric. Is there some trick to make any of this easier? 8. Is there any way of telling the transfer package that some rules have higher priority than others? Cheers, Manuel --------------ms010901060805080705020603 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC EXkwggUSMIID+qADAgECAgkA4wvV+K8l2YEwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNVBAYT AkRFMSswKQYDVQQKDCJULVN5c3RlbXMgRW50ZXJwcmlzZSBTZXJ2aWNlcyBHbWJIMR8wHQYD VQQLDBZULVN5c3RlbXMgVHJ1c3QgQ2VudGVyMSUwIwYDVQQDDBxULVRlbGVTZWMgR2xvYmFs Um9vdCBDbGFzcyAyMB4XDTE2MDIyMjEzMzgyMloXDTMxMDIyMjIzNTk1OVowgZUxCzAJBgNV BAYTAkRFMUUwQwYDVQQKEzxWZXJlaW4genVyIEZvZXJkZXJ1bmcgZWluZXMgRGV1dHNjaGVu IEZvcnNjaHVuZ3NuZXR6ZXMgZS4gVi4xEDAOBgNVBAsTB0RGTi1QS0kxLTArBgNVBAMTJERG Ti1WZXJlaW4gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAMtg1/9moUHN0vqHl4pzq5lN6mc5WqFggEcVToyVsuXPztNXS43O+FZs FVV2B+pG/cgDRWM+cNSrVICxI5y+NyipCf8FXRgPxJiZN7Mg9mZ4F4fCnQ7MSjLnFp2uDo0p eQcAIFTcFV9Kltd4tjTTwXS1nem/wHdN6r1ZB+BaL2w8pQDcNb1lDY9/Mm3yWmpLYgHurDg0 WUU2SQXaeMpqbVvAgWsRzNI8qIv4cRrKO+KA3Ra0Z3qLNupOkSk9s1FcragMvp0049ENF4N1 xDkesJQLEvHVaY4l9Lg9K7/AjsMeO6W/VRCrKq4Xl14zzsjz9AkH4wKGMUZrAcUQDBHHWekC AwEAAaOCAXQwggFwMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUk+PYMiba1fFKpZFK4OpL 4qIMz+EwHwYDVR0jBBgwFoAUv1kgNgB5oKAia4zV8mHSuCzLgkowEgYDVR0TAQH/BAgwBgEB /wIBAjAzBgNVHSAELDAqMA8GDSsGAQQBga0hgiwBAQQwDQYLKwYBBAGBrSGCLB4wCAYGZ4EM AQICMEwGA1UdHwRFMEMwQaA/oD2GO2h0dHA6Ly9wa2kwMzM2LnRlbGVzZWMuZGUvcmwvVGVs ZVNlY19HbG9iYWxSb290X0NsYXNzXzIuY3JsMIGGBggrBgEFBQcBAQR6MHgwLAYIKwYBBQUH MAGGIGh0dHA6Ly9vY3NwMDMzNi50ZWxlc2VjLmRlL29jc3ByMEgGCCsGAQUFBzAChjxodHRw Oi8vcGtpMDMzNi50ZWxlc2VjLmRlL2NydC9UZWxlU2VjX0dsb2JhbFJvb3RfQ2xhc3NfMi5j ZXIwDQYJKoZIhvcNAQELBQADggEBAIcL/z4Cm2XIVi3WO5qYi3FP2ropqiH5Ri71sqQPrhE4 eTizDnS6dl2e6BiClmLbTDPo3flq3zK9LExHYFV/53RrtCyD2HlrtrdNUAtmB7Xts5et6u5/ MOaZ/SLick0+hFvu+c+Z6n/XUjkurJgARH5pO7917tALOxrN5fcPImxHhPalR6D90Bo0fa3S PXez7vTXTf/D6OWST1k+kEcQSrCFWMBvf/iu7QhCnh7U3xQuTY+8npTD5+32GPg8SecmqKc2 2CzeIs2LgtjZeOJVEqM7h0S2EQvVDFKvaYwPBt/QolOLV5h7z/0HJPT8vcP9SpIClxvyt7bP ZYoaorVyGTkwggWsMIIElKADAgECAgcbY7rQHiw9MA0GCSqGSIb3DQEBCwUAMIGVMQswCQYD VQQGEwJERTFFMEMGA1UEChM8VmVyZWluIHp1ciBGb2VyZGVydW5nIGVpbmVzIERldXRzY2hl biBGb3JzY2h1bmdzbmV0emVzIGUuIFYuMRAwDgYDVQQLEwdERk4tUEtJMS0wKwYDVQQDEyRE Rk4tVmVyZWluIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IDIwHhcNMTYwNTI0MTEzODQwWhcN MzEwMjIyMjM1OTU5WjCBjTELMAkGA1UEBhMCREUxRTBDBgNVBAoMPFZlcmVpbiB6dXIgRm9l cmRlcnVuZyBlaW5lcyBEZXV0c2NoZW4gRm9yc2NodW5nc25ldHplcyBlLiBWLjEQMA4GA1UE CwwHREZOLVBLSTElMCMGA1UEAwwcREZOLVZlcmVpbiBHbG9iYWwgSXNzdWluZyBDQTCCASIw DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ07eRxH3h+Gy8Zp1xCeOdfZojDbchwFfylf S2jxrRnWTOFrG7ELf6Gr4HuLi9gtzm6IOhDuV+UefwRRNuu6cG1joL6WLkDh0YNMZj0cZGnl m6Stcq5oOVGHecwX064vXWNxSzl660Knl5BpBb+Q/6RAcL0D57+eGIgfn5mITQ5HjUhfZZkQ 0tkqSe3BuS0dnxLLFdM/fx5ULzquk1enfnjK1UriGuXtQX1TX8izKvWKMKztFwUkP7agCwf9 TRqaA1KgNpzeJIdl5Of6x5ZzJBTN0OgbaJ4YWa52fvfRCng8h0uwN89Tyjo4EPPLR22MZD08 WkVKusqAfLjz56dMTM0CAwEAAaOCAgUwggIBMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0P AQH/BAQDAgEGMCkGA1UdIAQiMCAwDQYLKwYBBAGBrSGCLB4wDwYNKwYBBAGBrSGCLAEBBDAd BgNVHQ4EFgQUazqYi/nyU4na4K2yMh4JH+iqO3QwHwYDVR0jBBgwFoAUk+PYMiba1fFKpZFK 4OpL4qIMz+EwgY8GA1UdHwSBhzCBhDBAoD6gPIY6aHR0cDovL2NkcDEucGNhLmRmbi5kZS9n bG9iYWwtcm9vdC1nMi1jYS9wdWIvY3JsL2NhY3JsLmNybDBAoD6gPIY6aHR0cDovL2NkcDIu cGNhLmRmbi5kZS9nbG9iYWwtcm9vdC1nMi1jYS9wdWIvY3JsL2NhY3JsLmNybDCB3QYIKwYB BQUHAQEEgdAwgc0wMwYIKwYBBQUHMAGGJ2h0dHA6Ly9vY3NwLnBjYS5kZm4uZGUvT0NTUC1T ZXJ2ZXIvT0NTUDBKBggrBgEFBQcwAoY+aHR0cDovL2NkcDEucGNhLmRmbi5kZS9nbG9iYWwt cm9vdC1nMi1jYS9wdWIvY2FjZXJ0L2NhY2VydC5jcnQwSgYIKwYBBQUHMAKGPmh0dHA6Ly9j ZHAyLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3QtZzItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0 MA0GCSqGSIb3DQEBCwUAA4IBAQCBeEWkTqR/DlXwCbFqPnjMaDWpHPOVnj/z+N9rOHeJLI21 rT7H8pTNoAauusyosa0zCLYkhmI2THhuUPDVbmCNT1IxQ5dGdfBi5G5mUcFCMWdQ5UnnOR7L n8qGSN4IFP8VSytmm6A4nwDO/afr0X9XLchMX9wQEZc+lgQCXISoKTlslPwQkgZ7nu7YRrQb tQMMONncsKk/cQYLsgMHM8KNSGMlJTx6e1du94oFOO+4oK4v9NsH1VuEGMGpuEvObJAaguS5 Pfp38dIfMwK/U+d2+dwmJUFvL6Yb+qQTkPp8ftkLYF3sv8pBoGH7EUkp2KgtdRXYShjqFu9V NCIaE40GMIIGrzCCBZegAwIBAgIMI4l7YMPKWG8NuOwAMA0GCSqGSIb3DQEBCwUAMIGNMQsw CQYDVQQGEwJERTFFMEMGA1UECgw8VmVyZWluIHp1ciBGb2VyZGVydW5nIGVpbmVzIERldXRz Y2hlbiBGb3JzY2h1bmdzbmV0emVzIGUuIFYuMRAwDgYDVQQLDAdERk4tUEtJMSUwIwYDVQQD DBxERk4tVmVyZWluIEdsb2JhbCBJc3N1aW5nIENBMB4XDTIwMDkyMjEzMzYxN1oXDTIxMTEx NjE1MzUzMlowgb4xCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11 ZW5jaGVuMSkwJwYDVQQKDCBUZWNobmlzY2hlIFVuaXZlcnNpdGFldCBNdWVuY2hlbjEiMCAG A1UECwwZRmFrdWx0YWV0IGZ1ZXIgSW5mb3JtYXRpazEVMBMGA1UEAwwMTWFudWVsIEViZXJs MSUwIwYJKoZIhvcNAQkBFhZtYW51ZWwuZWJlcmxAaW4udHVtLmRlMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEAucaS1T3hcnzeraljQM15EbQ1VC+eOZU5K5myJfZX4UH+eZq4 kqh7scR/NhBd6S4wnUF4f5JCAIufOLa3r1YkVKuK3LfYpzQnaKEufsdo8+SEWnldxCv/VPv1 eRTlZT3Z0jguqp54oDt3RyVXb81NfqEuJzNp6KbkPokZ4sggA1gVjc19bge5Iesw2xDJ6R+a /ZeNhcPt2uF3qHptkiJIm/lL8PBBT2M7EEIc6zwe9vzK2YtfEG3kZ/N5N1rICavwdyfdsslV 4CMje5jrdj7hWUs9kFfLoCyq8YGzolLNh30JlH7UGjA+d008Yec0ewr7NKmYOUKIZlfaOam/ /CKXfQIDAQABo4IC2jCCAtYwPgYDVR0gBDcwNTAPBg0rBgEEAYGtIYIsAQEEMBAGDisGAQQB ga0hgiwBAQQHMBAGDisGAQQBga0hgiwCAQQHMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXg MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQUcpSUz9enXud8qDpV 3R0dGEl2Z1swHwYDVR0jBBgwFoAUazqYi/nyU4na4K2yMh4JH+iqO3QwgasGA1UdEQSBozCB oIEQZWJlcmxtQGluLnR1bS5kZYEWbWFudWVsLmViZXJsQGluLnR1bS5kZYEgZWJlcmxtQGlu Zm9ybWF0aWsudHUtbXVlbmNoZW4uZGWBJm1hbnVlbC5lYmVybEBpbmZvcm1hdGlrLnR1LW11 ZW5jaGVuLmRlgRFlYmVybG1AY3MudHVtLmVkdYEXbWFudWVsLmViZXJsQGNzLnR1bS5lZHUw gY0GA1UdHwSBhTCBgjA/oD2gO4Y5aHR0cDovL2NkcDEucGNhLmRmbi5kZS9kZm4tY2EtZ2xv YmFsLWcyL3B1Yi9jcmwvY2FjcmwuY3JsMD+gPaA7hjlodHRwOi8vY2RwMi5wY2EuZGZuLmRl L2Rmbi1jYS1nbG9iYWwtZzIvcHViL2NybC9jYWNybC5jcmwwgdsGCCsGAQUFBwEBBIHOMIHL MDMGCCsGAQUFBzABhidodHRwOi8vb2NzcC5wY2EuZGZuLmRlL09DU1AtU2VydmVyL09DU1Aw SQYIKwYBBQUHMAKGPWh0dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZGZuLWNhLWdsb2JhbC1nMi9w dWIvY2FjZXJ0L2NhY2VydC5jcnQwSQYIKwYBBQUHMAKGPWh0dHA6Ly9jZHAyLnBjYS5kZm4u ZGUvZGZuLWNhLWdsb2JhbC1nMi9wdWIvY2FjZXJ0L2NhY2VydC5jcnQwDQYJKoZIhvcNAQEL BQADggEBAEpTbbFnQNh9aC08cx/DzduZ3ZDZD6xNW+4eyKfCnfyGr3XADGesbpRNqtv8ZBCR duT2g26iZgw0dHrVwxAzbbUkHHNM6FxQbO2ek5EHS2/NWLhzwq54LCseextQCYRMYxOM5Lrp HKfSqdZG6QmdY8Gl4XI6/RD70KYBoE1Ek6MHh+zrEwFNrvuuKdSBK2ekw4xMs9HqnKCf+DqU bpFkjecjHYSEiV8IwygHbzpimO4Eu8niFM7LlvuLnrKOcPefE2QxAX0uWzPCXyIYcPFZC8ue Lum8VtPNgj2WvLQ4B9rj0+ytw4157j4wKQGa+HX2frIblGajpjkEBYwpaI4cFBYxggQLMIIE BwIBATCBnjCBjTELMAkGA1UEBhMCREUxRTBDBgNVBAoMPFZlcmVpbiB6dXIgRm9lcmRlcnVu ZyBlaW5lcyBEZXV0c2NoZW4gRm9yc2NodW5nc25ldHplcyBlLiBWLjEQMA4GA1UECwwHREZO LVBLSTElMCMGA1UEAwwcREZOLVZlcmVpbiBHbG9iYWwgSXNzdWluZyBDQQIMI4l7YMPKWG8N uOwAMA0GCWCGSAFlAwQCAQUAoIICPTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqG SIb3DQEJBTEPFw0yMTAxMDUxMjQwMjlaMC8GCSqGSIb3DQEJBDEiBCDd9ifZPFXmgeiuiq0N ZrjjSYixvlYdKnD/y9iJ63u9EjBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjALBglg hkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcG BSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGvBgkrBgEEAYI3EAQxgaEwgZ4wgY0xCzAJBgNVBAYT AkRFMUUwQwYDVQQKDDxWZXJlaW4genVyIEZvZXJkZXJ1bmcgZWluZXMgRGV1dHNjaGVuIEZv cnNjaHVuZ3NuZXR6ZXMgZS4gVi4xEDAOBgNVBAsMB0RGTi1QS0kxJTAjBgNVBAMMHERGTi1W ZXJlaW4gR2xvYmFsIElzc3VpbmcgQ0ECDCOJe2DDylhvDbjsADCBsQYLKoZIhvcNAQkQAgsx gaGggZ4wgY0xCzAJBgNVBAYTAkRFMUUwQwYDVQQKDDxWZXJlaW4genVyIEZvZXJkZXJ1bmcg ZWluZXMgRGV1dHNjaGVuIEZvcnNjaHVuZ3NuZXR6ZXMgZS4gVi4xEDAOBgNVBAsMB0RGTi1Q S0kxJTAjBgNVBAMMHERGTi1WZXJlaW4gR2xvYmFsIElzc3VpbmcgQ0ECDCOJe2DDylhvDbjs ADANBgkqhkiG9w0BAQEFAASCAQCBKXL/faAMRr6xpeoazK2ExwowbvZjHjGBUJNi2fP8METZ RmXKGTrFxhWF6OvVdidMhGNb3o3quY1ZIJVmf6Xc9rGvQEDpss76ausQ/67VhJDffGg550Kq Q+9F55x3w8CQwItHo/m+qJA11MxNnsirCATTVG85XdFiLIDfseUI7sQO2JR43Sba2CWhmnHP LQY7LQ6lrJaTyoMHvaS4XQDxBOClc9g8d1qVir0xd1O9s5uoFDJ6UrNI1F7uP0/9wpAO6LqQ P8VhzN3a7sxnYqyYiZCEnRIBZnk2oZ0NRh0pHP7rVyVpBElUuVLPLOdGmPNsBP00IwU8/m7m 8a31MnuRAAAAAAAA --------------ms010901060805080705020603-- From mikhail.chekhov.w at gmail.com Tue Jan 05 23:20:18 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:41928) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwvcg-00089L-9W (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 23:20:18 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.166.46 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.166.46 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mikhail.chekhov.w[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-io1-f46.google.com ([209.85.166.46]:37128) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kwvcf-0006UN-JY (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 23:20:18 +0000 Received: by mail-io1-f46.google.com with SMTP id p187so999312iod.4 for ; Tue, 05 Jan 2021 15:20:16 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=szo6gt/ZuD6KhxOiuM1xxujpuujhNLpWokBpinSdsrM=; b=eo43eMkfnqBHlcBnzx9cMomnqGYN3MmKgtPrlUCOYdfT24pXr682rKV2xgJbznFV0H ZNPT7D8+0F4CdtChMZVomz2G/OKjamDYg3tVhXfVM/qhfY31apPI/lzvLVZKRPWoKLvf hDk8/r6mo+Bd4IzwQdVMgmOpL9IDA8cp6xjIbqK9yYQOlnB1+bwv3jJbLwz+yxQpXgDE lDz2f4P4ci7W+Zu59LI2zI5oOvc+j6AovCfALK90NmwqSCJXvtUklDMwb0QpA7jzwKWz vMiM0jvJOPMK/2TRL+GWKgCOkXCR+4hot1SOcRllEbFxO9zWAcAyY5B3ReU5w65jHcEQ Efaw== X-Gm-Message-State: AOAM532fM1pf1qoZMZsGg40OhNbiDQQ8dsQyzsnRDTHlBYfj/53I3ZSG doDMPUoDfDICZ7UTN4C4vJnRlJOH+Yz7gfcVyo2PqIoQgeI= X-Google-Smtp-Source: ABdhPJxnIuRiuiPn8rzrdQ66rxQgbczrLGSKtbRllrTRx4naXtOTve3nq3O1Bcnl98m+4+YGsUijJi5tcIszNrpQcF0= X-Received: by 2002:a02:ccea:: with SMTP id l10mr1637764jaq.101.1609888815673; Tue, 05 Jan 2021 15:20:15 -0800 (PST) MIME-Version: 1.0 From: Mikhail Chekhov Date: Wed, 6 Jan 2021 01:20:04 +0200 Message-ID: To: cl-isabelle-users at lists.cam.ac.uk Content-Type: multipart/alternative; boundary="000000000000fc75f405b82f7289" Subject: Re: [isabelle] Questions about "transfer" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 23:20:18 -0000 --000000000000fc75f405b82f7289 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear Manuel Eberl/All, I will allow myself to provide a few remarks as a regular user of the transfer infrastructure. Certainly, my own understanding of the framework is still somewhat limited. However, hopefully, my advice will help to get rid of the questions that are less difficult. > 1. It seems to me that "transfer" always transfers theorems > "left-to-right". For the "transferred" attribute, there is > "untransferred" =E2=80=93 is there a similar thing for "transfer" as well= ? > > Similar questions have been asked before and the answer seems to be negative ( https://lists.cam.ac.uk/mailman/htdig/cl-isabelle-users/2019-July/msg00013.= html ). > 3. Sometimes, it is more convenient to prove transfer rules for > functions following the pattern > lemma > assumes [transfer_rule]: "r1 a b" "r2 c d" > shows "r3 (f a c) (f' b d)" > but if I declare that lemmas as a transfer_rule, it is not used. I have > to explicitly prove "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" from this for= it to be > used. Is there some way around this? > > In certain circumstances, the rules stated in a similar format can be used. For example, context includes lifting_syntax fixes r1 r2 r3 :: "'a =E2=87=92 'b =E2=87=92 bool" and f :: "'a =E2=87=92 'a =E2=87=92 'a" and f' :: "'b =E2=87=92 'b =E2= =87=92 'b" assumes [transfer_rule]: "bi_unique r3" and [transfer_rule]: "r1 a b =E2=9F=B9 r2 c d =E2=9F=B9 r3 (f a c) (f' = b d)" begin lemma assumes [transfer_rule]: "r1 a b" "r2 c d" shows "f' b d =3D f' b d" by transfer (rule refl) end In this case, "r1 a b" and "r2 c d" are treated as side conditions, and the transfer infrastructure has some limited support for such unconventional side conditions (however, I am not certain as to what is the extent of such support). If it is more convenient to prove a transfer rule in the form that you have stated, then you can always use (intro rel_funI) to perform the conversion, e.g. lemma includes lifting_syntax shows "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" apply(intro rel_funI) (*=E2=8B=80x y xa ya. r1 x y =E2=9F=B9 r2 xa ya =E2=9F=B9 r3 (f x xa) (f'= y ya)*) > 5. Is there any trick for proving transfer rules for constants defined > by "inductive" or "fun" that I am unaware of? Doing the induction proofs > manually is very tedious. > > Yes, there is: see https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg00072.h= tml. I would like to add to the suggestion in the post that, technically, there is little that is stopping one from recovering the original definitional axiom in Isabelle/ML using Thm.axiom (e.g. see the implementation of UD in https://gitlab.com/user9716869/Isabelle-Complement-Library, but keep in mind that it is still in a reasonably rough experimental state) instead of using the collection of theorems associated with nitpick. Providing further automation for this is on my own "to do" list, but it has a very low priority. If you decide to make an attempt to generalize/automate this idea, I would highly appreciate it if you could let me know about this to avoid possible duplication of efforts. > 7. In measure theory, there is the definition > nn_integral :: 'a measure =E2=87=92 ('a =E2=87=92 ennreal) =E2=87=92 en= nreal > nn_integral M f =3D > Sup (simple_integral M ` > {g. simple_function M g =E2=88=A7 g =E2=89=A4 f}) > I was able to prove > lemma transfer_nn_integral [transfer_rule]: > assumes [transfer_rule]: "bi_unique r" > shows "(rel_measure r =3D=3D=3D> (r =3D=3D=3D> (=3D)) =3D=3D=3D> (=3D)) > nn_integral nn_integral" > but I needed some trickery to avoid "bi_total r" due to the use of > "Collect". The reason why it works is that "simple_integral" only > evaluates the function on values from "space M", so we can replace the > set in question by > {g. simple_function M g =E2=88=A7 (=E2=88=80x. x =E2=88=89 space M =E2= =9F=B6 f x =3D 0) =E2=88=A7 > =E2=88=80x=E2=88=88space M. g x =E2=89=A4 f x} > which can be shown (with quite a bit of pain!) to be parametric. > Is there some trick to make any of this easier? > > I cannot be certain, but it appears that a pattern similar to the one that you suggest was used in published work by those whom I would consider to be well-versed in the functionality of transfer (e.g. see the code associated with [1]). Thus, it is likely that the problem does not have a generic solution. However, I would be happy to be wrong about this, as my own work would benefit from having such a solution. In this context, I wonder if the types of algorithms used in the work of Peter Lammich (e.g. [2] and other related articles) would handle this scenario. I would certainly appreciate any comments from him. > 8. Is there any way of telling the transfer package that some rules have > higher priority than others? > > A slightly hacky way would be to simply rearrange the transfer_raw programmatically, as you need. Practically, in most circumstances, this should not be needed. One can always write lemmas [transfer_rule] =3D (*relevant rules that need to have a higher priority*). The duplicates will not be produced: the theorems in transfer_raw will simply be rearranged with the restated rules at the top of the list. Kind Regards, Mikhail Chekhov [1]. Immler F, Zhan B. Smooth Manifolds and Types to Sets for Linear Algebra in Isabelle/HOL. In: 8th ACM SIGPLAN International Conference on Certified Programs and Proofs. New York: ACM; 2019. p. 65=E2=80=9377. (CPP = 2019). [2]. Lammich P. Automatic Data Refinement. In: Blazy S, Paulin-Mohring C, Pichardie D, editors. Interactive Theorem Proving. Heidelberg: Springer; 2013. p. 84=E2=80=9399. --000000000000fc75f405b82f7289 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear Manuel Eberl/All,

I will allow mys= elf to provide a few remarks=C2=A0as a regular user of the transfer infrast= ructure. Certainly, my own understanding of the framework is still somewhat= limited. However, hopefully, my advice will help to get rid of the questio= ns that are less difficult.


1. It seems to me that "transfer" always transfers= theorems
"left-to-right". For the "transferred" att= ribute, there is
"untransferred" =E2=80=93 is there a similar = thing for "transfer" as well?


=
Similar questions have been asked before and the answer seems to= be negative (https://lists.cam.ac.uk/mailman/htdig/cl-isa= belle-users/2019-July/msg00013.html).=C2=A0


3. Sometimes, it is more convenient to pr= ove transfer rules for
functions following the pattern
lemma
=C2= =A0 assumes [transfer_rule]: "r1 a b" "r2 c d"
=C2= =A0 shows =C2=A0 "r3 (f a c) (f' b d)"
but if I declare th= at lemmas as a transfer_rule, it is not used. I have
to explicitly prove= "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" from this for = it to be
used. Is there some way around this?

=

In certain circumstances, the rules stated in a similar= format can be used. For example,

context
=C2= =A0 includes lifting_syntax
=C2=A0 fixes r1 r2 r3 :: "'a =E2=87= =92 'b =E2=87=92 bool"
=C2=A0 =C2=A0 and f :: "'a =E2= =87=92 'a =E2=87=92 'a" and f' :: "'b =E2=87=92 &= #39;b =E2=87=92 'b"
=C2=A0 assumes [transfer_rule]: "bi_un= ique r3"
=C2=A0 =C2=A0 and [transfer_rule]: "r1 a b =E2=9F=B9 = r2 c d =E2=9F=B9 r3 (f a c) (f' b d)"
begin

lemma
=C2= =A0 assumes [transfer_rule]: "r1 a b" "r2 c d" =C2=A0=C2=A0 shows "f' b d =3D f' b d"
=C2=A0 by transfer = (rule refl)

end

In this case, "r1 a b" and "r2= c d" are treated as side conditions, and the transfer infrastructure = has some limited support for such unconventional side conditions (however, = I am not certain as to what is the extent of such support).

<= /div>
If it is more convenient to prove a transfer rule in the form tha= t you have stated, then you can always use (intro rel_funI) to perform the = conversion, e.g.

lemma
=C2=A0 includes lifting= _syntax
=C2=A0 shows "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f= 9;"
=C2=A0 apply(intro rel_funI)
=C2=A0 (*=E2=8B=80x = y xa ya. r1 x y =E2=9F=B9 r2 xa ya =E2=9F=B9 r3 (f x xa) (f' y ya)*)

5. Is ther= e any trick for proving transfer rules for constants defined
by "in= ductive" or "fun" that I am unaware of? Doing the induction = proofs
manually is very tedious.


Yes, there is: see=C2=A0https://lists.cam.ac.uk/pipermail/= cl-isabelle-users/2019-January/msg00072.html. I would like to add to th= e suggestion in the post that, technically, there is little that is stoppin= g one from recovering the original definitional axiom in Isabelle/ML using = Thm.axiom (e.g. see the implementation of UD in https://gitlab.com/user9716869/= Isabelle-Complement-Library, but keep in mind that it is still in a rea= sonably rough experimental state) instead of using the collection of theore= ms associated with nitpick. Providing further automation for this is on my = own "to do" list, but it has a very low priority. If you decide t= o make an attempt to generalize/automate this idea, I would highly apprecia= te it if you could let me know about this to avoid possible duplication of = efforts.=C2=A0


7. In measure theory, there is the definition
=C2=A0 nn_integral= :: 'a measure =E2=87=92 ('a =E2=87=92 ennreal) =E2=87=92 ennreal=C2=A0 nn_integral M f =3D
=C2=A0 =C2=A0 Sup (simple_integral M `
= =C2=A0 =C2=A0 {g. simple_function M g =E2=88=A7 g =E2=89=A4 f})
I was ab= le to prove
lemma transfer_nn_integral [transfer_rule]:
=C2=A0 assume= s [transfer_rule]: "bi_unique r"
=C2=A0 shows "(rel_measu= re r =3D=3D=3D> (r =3D=3D=3D> (=3D)) =3D=3D=3D> (=3D))
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0nn_integral nn_integral"
but I needed so= me trickery to avoid "bi_total r" due to the use of
"Coll= ect". The reason why it works is that "simple_integral" only=
evaluates the function on values from "space M", so we can re= place the
set in question by
=C2=A0 {g. simple_function M g =E2=88=A7= (=E2=88=80x. x =E2=88=89 space M =E2=9F=B6 f x =3D 0) =E2=88=A7
=C2=A0 = =C2=A0 =C2=A0 =E2=88=80x=E2=88=88space M. g x =E2=89=A4 f x}
which can b= e shown (with quite a bit of pain!) to be parametric.
Is there some tric= k to make any of this easier?


I cannot be certain, but it appears that a pattern similar to the one that= you suggest was used in published work by those whom I would consider to b= e well-versed in the functionality of transfer (e.g. see the code associate= d with [1]). Thus, it is likely that the problem does not have a generic so= lution. However, I would be happy to be wrong about this, as my own work wo= uld benefit from having such a solution.=C2=A0

In = this context, I wonder if the types of algorithms used in the work of Peter= Lammich (e.g. [2] and other related articles) would handle this scenario. = I would certainly appreciate any comments from him.


8. Is there any way of telling= the transfer package that some rules have
higher priority than others?<= br>

A slightly hacky way would be to simply = rearrange the transfer_raw programmatically, as you need. Practically, in m= ost circumstances, this should not be needed. One can always write lemmas [= transfer_rule] =3D (*relevant rules that need to have a higher priority*). = The duplicates will not be produced: the theorems in transfer_raw will simp= ly be rearranged with the restated rules at the top of the list.
=
Kind Regards,
Mikhail Chekhov

=
[1]. Immler F, Zhan B. Smooth Manifolds and Types to Sets for Linear A= lgebra in Isabelle/HOL. In: 8th ACM SIGPLAN International Conference on Cer= tified Programs and Proofs. New York: ACM; 2019. p. 65=E2=80=9377. (CPP 201= 9).=C2=A0
[2]. Lammich P. Automatic Data Refinement. In: Blaz= y S, Paulin-Mohring C, Pichardie D, editors. Interactive Theorem Proving. H= eidelberg: Springer; 2013. p. 84=E2=80=9399.=C2=A0
--000000000000fc75f405b82f7289-- From isabelle-users at starkeffect.com Tue Jan 05 23:28:42 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:44714) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwvko-0008Kb-6k (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 23:28:42 +0000 X-Cam-SpamDetails: score -0.1 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from cloud2.starkeffect.com ([45.55.83.152]:58230) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtp id 1kwvkn-000VTX-ed (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 23:28:42 +0000 Received: from home.starkeffect.com (ool-18b963f6.dyn.optonline.net [24.185.99.246]) by cloud2.starkeffect.com (Postfix) with ESMTPSA id 44C5A451D1; Tue, 5 Jan 2021 23:28:37 +0000 (UTC) To: "cl-isabelle-users at lists.cam.ac.uk" From: "Eugene W. Stark" Message-ID: <8a237949-5c44-0d7d-5603-6534318e1b45 at starkeffect.com> Date: Tue, 5 Jan 2021 18:28:36 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: [isabelle] Isabelle2021-RC1 - Any way to limit "veriT" memory use? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list Reply-To: stark at cs.stonybrook.edu List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 23:28:42 -0000 I am running Isabelle2021-RC1 under Ubuntu 20.04. Is there any way to limit the memory use of the "veriT" prover? It seems not to be a very good citizen in this respect: when it is run from the "try" command it seems willing to grow its address space even to significantly exceed the total amount of system RAM. For example, I just observed a virtual address space of 37.8GB on a system with 32GB total RAM and of course Java, poly, and various other things were also running, so this is unsupportable. When this occurs, the system is sent into a thrashing mode, from which it is difficult even to get back control of the desktop so that the offending process can be identified and killed. So some ability to impose a limit is needed here. From mathias.fleury12 at gmail.com Wed Jan 06 08:29:51 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:53748) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kx4CV-0003qH-7x (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 08:29:51 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.221.48 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.221.48 listed in wl.mailspike.net] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mathias.fleury12[at]gmail.com] * 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in * digit * [mathias.fleury12[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-wr1-f48.google.com ([209.85.221.48]:41682) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kx4CU-000kmP-Ro (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 08:29:51 +0000 Received: by mail-wr1-f48.google.com with SMTP id a12so1618293wrv.8 for ; Wed, 06 Jan 2021 00:29:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=kz4WSoP8cwvXjUk0w5UDCWnVjIwM4ILLSOrekzPdGbY=; b=qM4nrPrGRkpc3MjLGsPdUMlSXmXq+elWtq0PKbOUaOaMHimfx+NuDhcm+82ZLrDXYf pyi3JGBbQ0/EqNk4ZadiOnCPe6oduiEKPzQbX67D5C24DIaCIgkMMDlMnhGE0/SdNhRV hmffGnrlMUZsNgetTeDWfcJ7ht2y7ilLkNpL2JWhAnEVguAS7dvTIgAz5qsM7T8acYBp C/WEqMCXCweCDE+6UW814mzqe/rQOzUZSlmmj5YMzhQ3E1f1iKmkLyaBgCm2m0euQ7k5 m59SZJm8ZxGjQtG2nWHUrqJammiJl/EKhY1w5C1KfAl0VV7coJf1M2tgRntcdP5EpKWH qtKw== X-Gm-Message-State: AOAM530DJaiYTvN/bINT7W1QWqwpOK76O2TT6oTSE/WeCioFaHfMmdlj CdUs+pMvmWYXaRa1kVyyoLWSnTaqSXxM X-Google-Smtp-Source: ABdhPJwkYTdFidnDLJkI/d28ZNKvg3obfeIxq74E+iMBGEox57DnI0lwEIQUGZsYsza0psnm3aeeOw== X-Received: by 2002:adf:eb87:: with SMTP id t7mr3119609wrn.316.1609921790318; Wed, 06 Jan 2021 00:29:50 -0800 (PST) Received: from ?IPv6:2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd? ([2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd]) by smtp.gmail.com with ESMTPSA id b19sm1997189wmj.37.2021.01.06.00.29.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 06 Jan 2021 00:29:49 -0800 (PST) To: cl-isabelle-users at lists.cam.ac.uk, isabelle-users at starkeffect.com References: <8a237949-5c44-0d7d-5603-6534318e1b45 at starkeffect.com> From: Mathias Fleury Message-ID: <6f2d903f-f7d6-0a81-abfb-06a479fe6c1c at gmail.com> Date: Wed, 6 Jan 2021 09:29:48 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: <8a237949-5c44-0d7d-5603-6534318e1b45 at starkeffect.com> Content-Type: multipart/alternative; boundary="------------B006901F036290C2D0093E59" Content-Language: en-US Subject: Re: [isabelle] Isabelle2021-RC1 - Any way to limit "veriT" memory use? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 08:29:51 -0000 This is a multi-part message in MIME format. --------------B006901F036290C2D0093E59 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Hi Eugene, I never use "try", so I need some more information: * Are you talking about one veriT thread  that used so much memory or more than one veriT thread? * on what theory was this? I would like to reproduce that. * What was the real memory usage? Virtual memory is pretty meaningless: I have a program that has a virtual memory usage of 256G but uses only 9M... If the trashing is not too hard to reproduce: * Does it still happen if you deactivate veriT in sledgehammer by adding: ML ‹ fun verit_rm_stgy f stgy thy =   let     val ctxt' = f (Proof_Context.init_global thy);     val thy' = Proof_Context.theory_of ctxt';   in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end; › setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default", "best"]› ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})› (*should print: val it = []: string list*) at the top of the file? * If the previous point works, does it still happen if you deactivate all but one veriT strategy in sledgehammer, by adding: ML ‹ fun verit_rm_stgy f stgy thy =   let     val ctxt' = f (Proof_Context.init_global thy);     val thy' = Proof_Context.theory_of ctxt';   in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end; › setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default"]› ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})› (*should print: val it = ["best"]: string list*) at the top of the file? Thanks, Mathias On 06/01/2021 00:28, Eugene W. Stark wrote: > I am running Isabelle2021-RC1 under Ubuntu 20.04. Is there any way to limit the memory use > of the "veriT" prover? It seems not to be a very good citizen in this respect: when it is > run from the "try" command it seems willing to grow its address space even to significantly > exceed the total amount of system RAM. For example, I just observed a virtual address space > of 37.8GB on a system with 32GB total RAM and of course Java, poly, and various other things > were also running, so this is unsupportable. When this occurs, the system is sent into a > thrashing mode, from which it is difficult even to get back control of the desktop so that > the offending process can be identified and killed. So some ability to impose a limit is > needed here. > > > --------------B006901F036290C2D0093E59 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit

Hi Eugene,

I never use "try", so I need some more information:

* Are you talking about one veriT thread  that used so much memory or more than one veriT thread?

* on what theory was this? I would like to reproduce that.

* What was the real memory usage? Virtual memory is pretty meaningless: I have a program that has a virtual memory usage of 256G but uses only 9M...



If the trashing is not too hard to reproduce:

* Does it still happen if you deactivate veriT in sledgehammer by adding:


ML ‹
fun verit_rm_stgy f stgy thy =
  let
    val ctxt' = f (Proof_Context.init_global thy);
    val thy' = Proof_Context.theory_of ctxt';
  in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end;


setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default", "best"]›

ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})›
(*should print: val it = []: string list*)

at the top of the file?


* If the previous point works, does it still happen if you deactivate all but one veriT strategy in sledgehammer, by adding:


ML ‹
fun verit_rm_stgy f stgy thy =
  let
    val ctxt' = f (Proof_Context.init_global thy);
    val thy' = Proof_Context.theory_of ctxt';
  in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end;


setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default"]›

ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})›
(*should print: val it = ["best"]: string list*)

at the top of the file?



Thanks,

Mathias


On 06/01/2021 00:28, Eugene W. Stark wrote:
I am running Isabelle2021-RC1 under Ubuntu 20.04.  Is there any way to limit the memory use
of the "veriT" prover?  It seems not to be a very good citizen in this respect: when it is
run from the "try" command it seems willing to grow its address space even to significantly
exceed the total amount of system RAM.  For example, I just observed a virtual address space
of 37.8GB on a system with 32GB total RAM and of course Java, poly, and various other things
were also running, so this is unsupportable.  When this occurs, the system is sent into a
thrashing mode, from which it is difficult even to get back control of the desktop so that
the offending process can be identified and killed.  So some ability to impose a limit is
needed here.



--------------B006901F036290C2D0093E59-- From itp2021-workshops at easyconferences.eu Tue Jan 05 15:05:54 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:37008) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kwnuE-0004tj-Pa (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 15:05:54 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:47557) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwnuD-000gdw-ef (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Tue, 05 Jan 2021 15:05:54 +0000 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kwnuD-0007mB-1l for isabelle-users at cl.cam.ac.uk; Tue, 05 Jan 2021 15:05:53 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail.easyall.org ([23.235.207.70]:33208) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kwnuB-000OSn-ME (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Tue, 05 Jan 2021 15:05:53 +0000 Received: from [::1] (port=36466 helo=vps24692.inmotionhosting.com) by vps24692.inmotionhosting.com with esmtpa (Exim 4.93) (envelope-from ) id 1kwnu5-0005E6-N4; Tue, 05 Jan 2021 10:05:45 -0500 MIME-Version: 1.0 Date: Tue, 05 Jan 2021 10:05:45 -0500 From: itp2021-workshops at easyconferences.eu To: Isabelle Users , Coq Club , Hol Info , Mizar Forum , Acl2 , Agda , Pvs , Cicm Members , Types Announce Message-ID: X-Sender: itp2021-workshops at easyconferences.eu User-Agent: Roundcube Webmail/1.3.15 Content-Type: multipart/alternative; boundary="=_13e14c918f9ebe997aaee63f69d9c247" X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vps24692.inmotionhosting.com X-AntiAbuse: Original Domain - cl.cam.ac.uk X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - easyconferences.eu X-Get-Message-Sender-Via: vps24692.inmotionhosting.com: authenticated_id: itp2021-workshops at easyconferences.eu X-Authenticated-Sender: vps24692.inmotionhosting.com: itp2021-workshops at easyconferences.eu X-debug-header: local_aliases has suffix X-Mailman-Approved-At: Wed, 06 Jan 2021 10:08:19 +0000 Cc: Itp2021 Workshops Subject: [isabelle] ITP2021: Second Call for Workshops (Deadline 11 January 2021) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 15:05:54 -0000 --=_13e14c918f9ebe997aaee63f69d9c247 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII -------------------------------------------------------------------- ITP2021: Interactive Theorem Proving, 12th International Conference 2021, June 29-July 1, Rome, Italy http://easyconferences.eu/itp2021/ [1] -------------------------------------------------------------------- SECOND CALL FOR WORKSHOPS The ITP conference series is concerned with all topics related to interactive theorem proving, ranging from theoretical foundations to implementation aspects and applications in system verification, security, and formalization of mathematics. The 12th ITP conference, ITP 2021, will be held in Rome between 29 June and 1 July. It will be co-located with LICS and ICTCS conferences. ITP will carefully monitor the development of the COVID-19 pandemic, and take guidance from the health authorities to determine whether ITP21 will be held physically, virtually, or in a hybrid manner. Researchers and practitioners are invited to submit proposals for co-located workshops on topics relating to interactive theorem proving. Workshops can target the ITP community in general, focus on a particular ITP system, or highlight more specific issues or recent developments. Proposals for in-depth tutorials or tool introductions are also welcome. Co-located events will take place on 28 June and 2 July and will be held on the same premises as the main conference. In case of needs, we are ready to discuss and try to accommodate requests for two-day workshops. Conference facilities are offered free of charge to one of the organizers and one of the invited speakers. Workshop-only attendees will enjoy a significantly reduced registration fee. Detailed organizational matters such as paper submission and review process, or publication of proceedings, are up to the organizers of individual workshops. All accepted workshops will be expected to have their program ready by 4 June, 2021. Proposals for workshops should contain at least the following pieces of information: * name and contact details of the main organizer(s) * (if applicable:) names of additional organizers * title and organizational style of the workshop (tutorial, public workshop, project workshop, etc.) * preferred length of the workshop (half day or full day) * estimated number of attendees * short (up to one page) description of the topic * (if applicable:) pointers to previous editions of the workshop, or to similar events * (if applicable:) special needs for an online event Proposals should be submitted by email to itp2021-workshops at easyconferences.eu, no later than 11 January, 2021. Selected workshops will be notified by 15 January, 2021. Links: ------ [1] http://easyconferences.eu/itp2021/ --=_13e14c918f9ebe997aaee63f69d9c247 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=UTF-8
----------------------------------------------------------------= ----
ITP2021: Interactive Theorem Proving, 12th International Confere= nce
2021, June 29-July 1, Rome, Italy
----------------------------------------------------------------= ----
 
SECOND CALL FOR WORKSHOPS
 
The ITP conference series is concerned with all topics related t= o
interactive theorem proving, ranging from theoretical foundation= s to
implementation aspects and applications in system verification,<= /span>
security, and formalization of mathematics. The 12th ITP confere= nce,
ITP 2021, will be held in Rome between 29 June and 1 July.
It will be co-located with LICS and ICTCS conferences.
 
ITP will carefully monitor the development of the COVID-19 pande= mic,
and take guidance from the health authorities to determine wheth= er
ITP21 will be held physically, virtually, or in a hybrid manner= =2E
 
Researchers and practitioners are invited to submit proposals for
co-located workshops on topics relating to= interactive theorem
proving. Workshops can target the ITP community in general, focu= s on a
particular ITP system, or highlight more specific issues or rece= nt
developments. Proposals for in-depth tutorials or tool introduct= ions
are also welcome.
 
Co-located events will take place on 28 June and 2 July and
will be held on the same premises as the main conference. In cas= e of 
needs, we are ready to discuss and try to accommodat= e requests for 
two-day workshops. Conference facilities are offered free of charge to=  
one of the organizers and one of the invited speakers. Workshop-only&n= bsp;
attendees will enjoy a significantly reduced registration fee.
 
Detailed organizational matters such as paper submission and rev= iew
process, or publication of proceedings, are up to the organizers= of
individual workshops. All accepted workshops will be expected to= have
their program ready by 4 June, 2021.
 
Proposals for workshops should contain at least the following pi= eces
of information:
  • name and contact details of the main organizer(s)
  • (if applicable:) names of additional organizers
  • title and organizational style of the workshop (tutorial, public<= br />workshop, project workshop, etc.)
  • preferred length of the workshop (half day or full day)
  • estimated number of attendees
  • short (up to one page) description of the topic
  • (if applicable:) pointers to previous editions of the workshop, o= r
    to similar events
  • (if applicable:) special needs for an online event
Proposals should be submitted by email to 
no later than 11 January, 2021.
Selected workshops will be notified by 15 January, 2021.<= /div> --=_13e14c918f9ebe997aaee63f69d9c247-- From frederic.loulergue at univ-orleans.fr Wed Jan 06 09:29:09 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:41414) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kx57t-0006dO-PE (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 09:29:09 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.6 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low * trust * [194.254.240.32 listed in list.dnswl.dnsbl.ja.net] * 2.4 RCVD_HELO_IP_MISMATCH Received: HELO and IP do not match, but * should X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from smtpout01-ext1.partage.renater.fr ([194.254.240.32]:42990) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtp id 1kx57r-000BwL-fq (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 09:29:09 +0000 Received: from zmtaauth01.partage.renater.fr (zmtaauth01.partage.renater.fr [194.254.240.25]) by smtpout10.partage.renater.fr (Postfix) with ESMTP id BA7C16254B for ; Wed, 6 Jan 2021 10:29:06 +0100 (CET) Received: from zmtaauth01.partage.renater.fr (localhost [127.0.0.1]) by zmtaauth01.partage.renater.fr (Postfix) with ESMTPS id 145F9140347 for ; Wed, 6 Jan 2021 10:29:06 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by zmtaauth01.partage.renater.fr (Postfix) with ESMTP id 0DB3214031D for ; Wed, 6 Jan 2021 10:29:06 +0100 (CET) X-Virus-Scanned: amavisd-new at zmtaauth01.partage.renater.fr Received: from zmtaauth01.partage.renater.fr ([127.0.0.1]) by localhost (zmtaauth01.partage.renater.fr [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3IZdx15rRM0y for ; Wed, 6 Jan 2021 10:29:05 +0100 (CET) Received: from 90.40.3.199 (unknown [194.254.241.251]) by zmtaauth01.partage.renater.fr (Postfix) with ESMTPA id B8B1B1402E4 for ; Wed, 6 Jan 2021 10:29:05 +0100 (CET) From: Frederic Loulergue To: cl-isabelle-users at lists.cam.ac.uk Message-ID: <6a73f0ee-8e13-1a52-f317-242ea59a9df3 at univ-orleans.fr> Date: Wed, 6 Jan 2021 10:29:06 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:78.0) Gecko/20100101 Thunderbird/78.5.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US X-Renater-Ptge-SpamState: clean X-Renater-Ptge-SpamScore: 0 X-Renater-Ptge-SpamCause: gggruggvucftvghtrhhoucdtuddrgedujedrvdefledgtdeiucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecutffgpfetvffgtfenuceurghilhhouhhtmecufedttdenucenucfjughrpefhuffvkffffgggtgfgsehtkeertddtfeejnecuhfhrohhmpefhrhgvuggvrhhitgcunfhouhhlvghrghhuvgcuoehfrhgvuggvrhhitgdrlhhouhhlvghrghhuvgesuhhnihhvqdhorhhlvggrnhhsrdhfrheqnecuggftrfgrthhtvghrnhepteduleegiefhveegfeeijefgieffieelleefgeefffeuhfehtedtjefhjeeguefgnecuffhomhgrihhnpehunhhivhdqohhrlhgvrghnshdrfhhrpdgvrghshigthhgrihhrrdhorhhgnecukfhppeduleegrddvheegrddvgedurddvhedunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepudelgedrvdehgedrvdeguddrvdehuddphhgvlhhopeeltddrgedtrdefrdduleelpdhmrghilhhfrhhomhephfhrvgguvghrihgtucfnohhulhgvrhhguhgvuceofhhrvgguvghrihgtrdhlohhulhgvrhhguhgvsehunhhivhdqohhrlhgvrghnshdrfhhrqedprhgtphhtthhopegtlhdqihhsrggsvghllhgvqdhushgvrhhssehlihhsthhsrdgtrghmrdgrtgdruhhk Content-Transfer-Encoding: quoted-printable X-Mailman-Approved-At: Wed, 06 Jan 2021 10:08:19 +0000 Subject: [isabelle] Call for Papers: Tests and Proofs 2021 (TAP 2021) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 09:29:09 -0000 [Please accept our apologies for duplicates] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D Call for Papers 15th International Conference on Tests And Proofs TAP 2021 Bergen (Norway), June 21-25, 2021 https://www.univ-orleans.fr/lifo/events/TAP2021 Part of STAF 2021 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D Important Dates --------------- Full Paper: January 31, 2021 Notification: March 15, 2021 Camera-Ready Version: April 18, 2021 Conference: June 21-25, 2021 Aim and Scope ------------- The TAP conference promotes research in verification and formal methods that targets the interplay of proofs and testing: the advancement of techniques of each kind and their combination, with the ultimate goal of improving software and system dependability. Research in verification has seen a steady convergence of heterogeneous techniques and a synergy between the traditionally distinct areas of testing (and dynamic analysis) and of proving (and static analysis). Formal techniques for counter-example generation based on, for example, symbolic execution, SAT/SMT-solving or model checking, furnish evidence for the potential of a combination of test and proof. The combination of predicate abstraction with testing-like techniques based on exhaustive enumeration opens the perspective for novel techniques of proving correctness. On the practical side, testing offers cost-effective debugging techniques of specifications or crucial parts of program proofs (such as invariants). Last but not least, testing is indispensable when it comes to the validation of the underlying assumptions of complex system models involving hardware and/or system environments. Over the years, there is growing acceptance in research communities that testing and proving are complementary rather than mutually exclusive techniques. The TAP conference aims to promote research in the intersection of testing and proving by bringing together researchers and practitioners from both areas of verification. Topics of Interest ------------------ TAP's scope encompasses many aspects of verification technology, including foundational work, tool development, and empirical research. Its topics of interest center around the connection between proofs (and other static techniques) and testing (and other dynamic techniques). Papers are solicited on, but not limited to, the following topics: - Verification and analysis techniques combining proofs and tests - Program proving with the aid of testing techniques - Deductive techniques supporting the automated generation of test vector= s and oracles (theorem proving, model checking, symbolic execution, SAT/= SMT solving, constraint logic programming, etc.) - Deductive techniques supporting novel definitions of coverage criteria, - Program analysis techniques combining static and dynamic analysis - Specification inference by deductive and dynamic methods - Testing and runtime analysis of formal specifications - Search-based technics for proving and testing - Verification of verification tools and environments - Applications of test and proof techniques in new domains, such as security, configuration management, learning - Combined approaches of test and proof in the context of formal certifications (Common Criteria, CENELEC, =E2=80=A6) - Case studies, tool and framework descriptions, and experience reports about combining tests and proofs Submission Instructions ----------------------- TAP 2021 accepts papers of four kinds: - Regular research papers: full submissions describing original research, of up to 16 pages (excluding references). - Tool demonstration papers: submissions describing the design and implementation of an analysis/verification tool or framework, of up to 8 pages (excluding references). The tool/framework described in a tool demonstration paper should be available for public use. - Short papers: submissions describing preliminary findings, proofs of concepts, and exploratory studies, of up to 6 pages (excluding references). - Journal-first extended abstracts, of up to 4 pages, summarizing recently published articles in high-quality journals. The aim of journal-first papers is to further enrich the program of TAP, as well as to provide an more flexible path to dissemination of results in the field. The summarized journal article should have been published (or accepted) by 1 July 2020 or later, and report new results (as opposed as simply extending prior conference work with 'appendix' material, or minor enhancements). Journal-first submissions must be marked as such in the submission=E2=80=99s title, = and must explicitly include full bibliographic details (including a DOI) of the journal publication they are based on. Accepted submissions will be published in Springer's LNCS series. Papers have to adhere to Springer's LNCS format and must be submitted in PDF format at the EasyChair submission site: https://easychair.org/conferences/?conf=3Dtap2021 Committees ---------- Information about all committees can be found under https://www.univ-orleans.fr/lifo/events/TAP2021 Program Chairs : Frederic Loulergue (University of Orleans, France) Franz Wotawa (Graz University of Technology, Austria) Contact ------- tap2021 at easychair.org From isabelle-users at starkeffect.com Wed Jan 06 11:03:38 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:47274) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kx6bK-0004Ai-Tk (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 11:03:38 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from cloud2.starkeffect.com ([45.55.83.152]:58502) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtp id 1kx6bK-000ZGf-JZ (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 11:03:38 +0000 Received: from home.starkeffect.com (ool-18b963f6.dyn.optonline.net [24.185.99.246]) by cloud2.starkeffect.com (Postfix) with ESMTPSA id CDB383F4F2; Wed, 6 Jan 2021 11:03:35 +0000 (UTC) From: "Eugene W. Stark" References: <8a237949-5c44-0d7d-5603-6534318e1b45 at starkeffect.com> <6f2d903f-f7d6-0a81-abfb-06a479fe6c1c at gmail.com> To: "cl-isabelle-users at lists.cam.ac.uk" Message-ID: <720e7460-bcf4-c54b-5a5f-628e20d940d2 at starkeffect.com> Date: Wed, 6 Jan 2021 06:03:35 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <6f2d903f-f7d6-0a81-abfb-06a479fe6c1c at gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [isabelle] Isabelle2021-RC1 - Any way to limit "veriT" memory use? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list Reply-To: stark at cs.stonybrook.edu List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 11:03:39 -0000 On 1/6/21 3:29 AM, Mathias Fleury wrote: > Hi Eugene, > > I never use "try", so I need some more information: > > * Are you talking about one veriT thread  that used so much memory or more than one veriT thread? I am not sure that I understand this question. Threads share a single address space, so the amount of memory used is not a property of a single thread, but of a process. If you are asking about processes, then it was one veriT process. I did not check how many threads were part of that process. > > * on what theory was this? I would like to reproduce that. It is not easy for me to supply any kind of simple theory with straightforward instructions for reproducing, but the next time it happens I will see if I can reproduce by using the same "try" in the same context. > > * What was the real memory usage? Virtual memory is pretty meaningless: I have a program that has a virtual memory usage > of 256G but uses only 9M... > Again, I don't know what you mean by "real memory usage". Unless a program uses some tricks such as sparse address spaces (which can be useful in some kind of in-memory database situations), the virtual memory will be the sum of the code, data, heap and stack sizes. Code and read-only data can be shared between processes, but this is not an issue here because there is only one veriT process, and I don't think any shared libraries used would be contributing to the issue. The usage in question is almost certainly dynamic memory usage; i.e. heap. Linux utilities such as "top" and "ps" do report "virtual size" and "resident-set size". The resident-set size would be the amount of actual RAM currently in use by the process. This number is obviously limited by the amount of installed RAM and once it reaches a certain level there can essentially not be any further increases, though the size of the virtual address space can continue to increase if there is available swap. In the case of the example I cited, the RSS reached about 26GB, which took up enough of the system RAM so that there was severe thrashing. > > > If the trashing is not too hard to reproduce: > > * Does it still happen if you deactivate veriT in sledgehammer by adding: > > > ML ‹ > fun verit_rm_stgy f stgy thy = >   let >     val ctxt' = f (Proof_Context.init_global thy); >     val thy' = Proof_Context.theory_of ctxt'; >   in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end; > › > > setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default", "best"]› > > ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})› > (*should print: val it = []: string list*) > > at the top of the file? > > > * If the previous point works, does it still happen if you deactivate all but one veriT strategy in sledgehammer, by adding: > > > ML ‹ > fun verit_rm_stgy f stgy thy = >   let >     val ctxt' = f (Proof_Context.init_global thy); >     val thy' = Proof_Context.theory_of ctxt'; >   in Context.theory_map (Verit_Proof.verit_rm_stgy stgy) thy' end; > › > > setup ‹fold (verit_rm_stgy (fn x=> x)) ["del_insts", "ccfv_SIG", "ccfv_threshold", "default"]› > > ML ‹Verit_Proof.all_veriT_stgies (Context.Proof @{context})› > (*should print: val it = ["best"]: string list*) > > at the top of the file? I can try this, but do not know if/when I will be able to report on results, since the situation is not deterministically reproducible at this time. > > > > Thanks, > > Mathias > > > On 06/01/2021 00:28, Eugene W. Stark wrote: >> I am running Isabelle2021-RC1 under Ubuntu 20.04. Is there any way to limit the memory use >> of the "veriT" prover? It seems not to be a very good citizen in this respect: when it is >> run from the "try" command it seems willing to grow its address space even to significantly >> exceed the total amount of system RAM. For example, I just observed a virtual address space >> of 37.8GB on a system with 32GB total RAM and of course Java, poly, and various other things >> were also running, so this is unsupportable. When this occurs, the system is sent into a >> thrashing mode, from which it is difficult even to get back control of the desktop so that >> the offending process can be identified and killed. So some ability to impose a limit is >> needed here. >> >> >> From isabelle-users at starkeffect.com Wed Jan 06 14:34:26 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:42142) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kx9tK-0001vj-R9 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 14:34:26 +0000 X-Cam-SpamDetails: score -0.1 from SpamAssassin-3.4.4-1885096 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from cloud2.starkeffect.com ([45.55.83.152]:59242) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtp id 1kx9tJ-0007UZ-ls (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 14:34:26 +0000 Received: from home.starkeffect.com (ool-18b963f6.dyn.optonline.net [24.185.99.246]) by cloud2.starkeffect.com (Postfix) with ESMTPSA id 15F183F4F2; Wed, 6 Jan 2021 14:34:23 +0000 (UTC) To: "cl-isabelle-users at lists.cam.ac.uk" From: "Eugene W. Stark" Message-ID: Date: Wed, 6 Jan 2021 09:34:22 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: [isabelle] Isabelle2021-RC1 - editing below sometimes causes rechecking above? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list Reply-To: stark at cs.stonybrook.edu List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 14:34:26 -0000 Using Isabelle2021-RC1 I am noticing an unexpected behavior that did not occur in previous versions: editing at the tail end of a proof under construction sometimes seems to trigger re-checking of material before the point at which editing is occurring. At least, I make some edit and I see highlighting briefly flash on the text earlier than where I am editing, as if rechecking has been triggered on that part. I cannot tell how far back the rechecking occurs -- in lemmas I have just been working on it goes at least back to the beginning of the lemma being proved and perhaps to previous lemmas. It might be associated with the insertion and deletion of "try", but I am not sure at this time. Using "try" as a way of verifying statements as I am sketching out a proof is pretty fundamental to how I do things, so I am constantly taking "try" in and out of the editing buffer. This is something that is is hard to describe how to reproduce, other than to say try writing a proof and keep your eyes open for apparent rechecking before the point of edit. Perhaps this report is enough to suggest what change might have been made that would cause this. From mathias.fleury12 at gmail.com Wed Jan 06 14:42:55 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:57604) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxA1X-0002M6-Ke (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 14:42:55 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.6 from SpamAssassin-3.4.4-1885096 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.221.46 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.221.46 listed in wl.mailspike.net] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mathias.fleury12[at]gmail.com] * 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in * digit * [mathias.fleury12[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * 1.7 HTML_IMAGE_ONLY_08 BODY: HTML: images with 400-800 bytes of words * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-wr1-f46.google.com ([209.85.221.46]:44684) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kxA1X-000CYk-jQ (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 14:42:55 +0000 Received: by mail-wr1-f46.google.com with SMTP id w5so2616497wrm.11 for ; Wed, 06 Jan 2021 06:42:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-language; bh=1aQvOFCWhOonD26iB2WswN7MGNiGqh7/9BZeKXfYM18=; b=HCCyINg64EjZ2fKHFyaqbi5yCGiw4nWxLVDar3r7bE0UgvxwOdopGUzxOHcF16T0bi DIhERLqqCtvBLFuCJx81QJKjoSOT9ospJf4K1wsc2BbPJWfBuIk/JOlNEOry+6O0gfLY b4xlQfzt/vSLQ5qEhz+ShQGxZ27biQU8JYNVipGh2vqzpvkycCB7oOxHP0ijK4uGOxHr 4sPdN23gGN+dCpaRnYC8fVsOxnD4weClXJuF6KYWoORuKXDFWDw1sCSKgwZe5VqCWDw4 rqYYjecEDfOzLHXRkPGDsi/mmYfzGd+6rRB7rT1rpLNg6sHT6aaCPWiUWyU5kHwGF4qh 1L5A== X-Gm-Message-State: AOAM531qUcYL1B9Ent/Nct8UdJl+7/eCb7mngqXvm/OeX6SPMkgoIkuQ QWmGp0FkAPcVl23uQZz9Gkx+//F28Rzq X-Google-Smtp-Source: ABdhPJwlKtDLtgjI+F2gg5p9FAAIFs5S5JjhEEKcgxBGjAV4cuKeq01LzmuIRfBgX8azit9eH8oJQA== X-Received: by 2002:a5d:4d8d:: with SMTP id b13mr4407962wru.415.1609944174685; Wed, 06 Jan 2021 06:42:54 -0800 (PST) Received: from ?IPv6:2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd? ([2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd]) by smtp.gmail.com with ESMTPSA id b14sm3333922wrx.77.2021.01.06.06.42.53 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 06 Jan 2021 06:42:53 -0800 (PST) To: "cl-isabelle-users at lists.cam.ac.uk" From: Mathias Fleury Message-ID: <91b26add-8e71-0905-ae47-c7b6481a9ce6 at gmail.com> Date: Wed, 6 Jan 2021 15:42:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------222E19AF2A220F3237BE1A27" Content-Language: en-US Subject: [isabelle] Isabelle2021-RC1 - error highlighting X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 14:42:55 -0000 This is a multi-part message in MIME format. --------------222E19AF2A220F3237BE1A27 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hi all, The error highlighting does not include the tactics anymore: Is that the expected behavior? I find error harder to find in a buffer. Best, Mathias --------------222E19AF2A220F3237BE1A27 Content-Type: multipart/related; boundary="------------25501B6E22B470EF25089CB8" --------------25501B6E22B470EF25089CB8 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit

Hi all,

The error highlighting does not include the tactics anymore:


Is that the expected behavior? I find error harder to find in a buffer.



Best,

Mathias

--------------25501B6E22B470EF25089CB8 Content-Type: image/png; name="lepejeaojnilcbgn.png" Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: inline; filename="lepejeaojnilcbgn.png" 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 AABJRU5ErkJggg== --------------25501B6E22B470EF25089CB8-- --------------222E19AF2A220F3237BE1A27-- From mail at andreas-lochbihler.de Wed Jan 06 20:46:05 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:36144) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxFgz-0001lU-9S (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 20:46:05 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) * [80.237.130.111 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from wp589.webpack.hosteurope.de ([80.237.130.111]:40058) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxFgy-000GeX-dY (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 20:46:05 +0000 Received: from [185.132.18.4] (helo=[192.168.1.62]); authenticated by wp589.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) id 1kxFgx-00034i-G6; Wed, 06 Jan 2021 21:46:03 +0100 To: Manuel Eberl , "cl-isabelle-users at lists.cam.ac.uk" References: <4c25801c-0735-acc9-3133-b9cfdcf8077c at in.tum.de> From: Andreas Lochbihler Message-ID: <0a8b53bd-ed7a-05dd-6d77-917cabbe6b18 at andreas-lochbihler.de> Date: Wed, 6 Jan 2021 21:46:02 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <4c25801c-0735-acc9-3133-b9cfdcf8077c at in.tum.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-bounce-key: webpack.hosteurope.de; mail at andreas-lochbihler.de; 1609965964; 7d4dfd03; X-HE-SMSGID: 1kxFgx-00034i-G6 Subject: Re: [isabelle] Questions about "transfer" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 20:46:05 -0000 Hi Manuel, > 1. It seems to me that "transfer" always transfers theorems > "left-to-right". For the "transferred" attribute, there is > "untransferred" – is there a similar thing for "transfer" as well? > Not that I know of. Going from right to left is problematic with rules that have compound terms on the right-hand side (see below). > 2. Relatedly, is there an easy idiomatic way to use "flipped" relators? No. The capabilities of "transfer" are very much tailored to the needs of the lifting package. And there, you normally just go one way. > 3. Sometimes, it is more convenient to prove transfer rules for > functions following the pattern > > lemma > assumes [transfer_rule]: "r1 a b" "r2 c d" > shows "r3 (f a c) (f' b d)" > > but if I declare that lemmas as a transfer_rule, it is not used. I have > to explicitly prove "(r1 ===> r2 ===> r3) f f'" from this for it to be > used. Is there some way around this? > Again, nothing that I'm aware of. But it shouldn't be too hard to write an attribute that does the preprocessing. > 4. There is currently no relator for measures. I came up with the > following one, which works well for my purposes, but I think it is not a > good relator because it only makes sense for bi-unique relators on the > values. > > definition rel_measure :: "('a ⇒ 'b ⇒ bool) ⇒ ('a measure ⇒ 'b measure ⇒ > bool)" where > "rel_measure r M1 M2 ⟷ > rel_set r (space M1) (space M2) ∧ > rel_set (rel_set r) (sets M1) (sets M2) ∧ > (rel_set r ===> (=)) (emeasure M1) (emeasure M2)" > > The definition of rel_pmf suggests something involving product measures > would be the right way to go. Yours doesn't look right. The relators coming out of the BNF package are all defined via the product, namely find a value z over pairs whose projections are the original two values x and y to be related such that the elements in z are contained in the relation r. While these definitions are canonical, they are hardly intuitive for custom type constructors and usually unwieldy to work with. For probability spaces, this product is commonly called a probabilistic coupling and I believe this would also be the right relator definition for general measures. For rel_pmf, you find the characterization theorem in the AFP in MFMC_Countable.Rel_PMF_Characterization. Essentially, it says that rel_pmf R p q iff measure p A <= measure q (R `` A) for all A. I'm pretty sure that such a characterization can be generalized to arbitrary measures. Strassen has proven a number of theorems in that direction (https://www.jstor.org/stable/2238148). > On a related note: suppose I defined my simple relator and then later on > someone else defines another relator for measures. Would the rules then > clash? Would one have to remove all the rules for my relator for things > to still work smoothly? > You'd get a clash for some things. In general, you want to register a few theorems for a relator (e.g., [relator_eq], [relator_mono], [quot_map]) and some of these attributes allow only one theorem per type constructor. So you can't register theorems for both relators. The plain transfer machinery can cope with several relators for the same type constructor (except for the function type) and I've used that occasionally. However, you have to be very careful to not end up with an exponentially large search space for transfer. > 5. Is there any trick for proving transfer rules for constants defined > by "inductive" or "fun" that I am unaware of? Doing the induction proofs > manually is very tedious. > I have looked into this previously. For inductive, I had a few ideas but eventually realized that it doesn't play well together with the current architecture of transfer. The problem is that like for the predicate compiler, an inductive definition may have different computational interpretations (modes in logic programming speak) and those interpretations lead to different relators in the resulting transfer rule (predicates vs. sets). While it's possible to convert between predicates and sets, this requires additional assumptions about the relations (typically bi_totality). However, as transfer does not really support multiple relators for the same type constructor, such a solution would be problematic. Moreover, there may be exponentially many transfer rules for an inductive predicate, in particular if you do a higher-order mode analysis similar to Lukas' work for the predicate compiler, so we'd end up creating an exponential number of transfer rules. > 6. The constant "has_derivative" is not parametric (I think) because > e.g. for "(f has_derivative D) at_top" you get "Lim (λx. x)", which > equal to "THE x. False". However, in practice, F is always of the form > "at x within A" and then has_derivative is parametric. But if I prove > the transfer rule > > (r ===> r) ===> (r ===> r) ===> r ===> rel_set r ===> (=)) > (λf D x A. (f has_derivative D) (at x within A)) > (λf D x A. (f has_derivative D) (at x within A)) > > for some suitable relator r, it does not get used. The transfer package > insists on a relator for "has_derivative". Of course, if I do an > auxiliary definition for this and fold it before applying transfer, it > works, but then I have a useless auxiliary function cluttering the > namespace. > The transfer package's algorithm assumes that the transferred term preserves function applications and abstractions, i.e., those are always transferred with rel_funI and rel_funD. Therefore, you cannot have a compound term on the left-hand side of a transfer rule; it will virtually never trigger. (The exception is if you have a constant on the right-hand side and use the untransferred attribute.) So your only chance here is to introduce an auxiliary constant and fold the definition before applying transfer. There are other algorithms that one could use to support such compound terms. For example, Peter Lammich's Autoref tool supports compound terms in transfer rules, but that's not integrated with transfer. > 7. In measure theory, there is the definition > > nn_integral :: 'a measure ⇒ ('a ⇒ ennreal) ⇒ ennreal > nn_integral M f = > Sup (simple_integral M ` > {g. simple_function M g ∧ g ≤ f}) > > I was able to prove > > lemma transfer_nn_integral [transfer_rule]: > assumes [transfer_rule]: "bi_unique r" > shows "(rel_measure r ===> (r ===> (=)) ===> (=)) > nn_integral nn_integral" > > but I needed some trickery to avoid "bi_total r" due to the use of > "Collect". The reason why it works is that "simple_integral" only > evaluates the function on values from "space M", so we can replace the > set in question by > > {g. simple_function M g ∧ (∀x. x ∉ space M ⟶ f x = 0) ∧ > ∀x∈space M. g x ≤ f x} > > which can be shown (with quite a bit of pain!) to be parametric. > > Is there some trick to make any of this easier? I don't think so. These complications are very typical of proving transfer rules. More precisely, they just show how many shortcuts we're taking in our definitions in HOL because HOL is a logic of total functions. In ordinary mathematics, we'd say that `f` and `g` are only defined on `space M`. So the universal quantifier that's implicit in the original definition's `g <= f` would range only over `space M` anyway. > 8. Is there any way of telling the transfer package that some rules have > higher priority than others? > Finally something that I can answer positively. "transfer" uses the [transfer_rule]s in inverse order, i.e., theorems that are declared as [transfer_rule] later have higher priority. Hope this helps, Andreas From mikhail.chekhov.w at gmail.com Wed Jan 06 23:30:49 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:44782) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxIGP-00077C-FG (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 23:30:49 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.166.46 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.166.46 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mikhail.chekhov.w[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-io1-f46.google.com ([209.85.166.46]:36233) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kxIGN-000YvM-MO (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 23:30:49 +0000 Received: by mail-io1-f46.google.com with SMTP id u26so4414833iof.3 for ; Wed, 06 Jan 2021 15:30:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=oq3AVvpqgOKmEVUnXXPbfBEKDdjdtwr/07cIANbXSP8=; b=cn9DoZVAlgW8WY0xyzjrfUtZxYYCBgKn8AvfgvoU21wmntUOKNuVdiovLLOddNiabg tEvryei4DlhtMN3JmoDsWzqe3ftCoFD7dzUnFlaP+o6IA3EmIaMODej/oVFcIZ/9/BNN VOJNrm7rxqimfZ48elRUmnXLD/j9Rdi5V41GDkGCcQ5yKU5pgDwlxLE1bOm948R1FgH3 ENIsQYAwKx8P+fp4CSWHTDMf5nU6oDFLr+wqYO59gQq4GT2k/7aZVg9v1gATXbR+ENh7 pSvCZZNVhUTBY8rYnHKvT3xKXnKV03cVeQiTbKsSk72LzYFIsSPn9R/TRq/T0SkuiP1k NTTQ== X-Gm-Message-State: AOAM533fHNA7OaWAAcockFKcbjd7AakTsCLZAI5F3k3NS7BzyGdN3vXl t3bmMAtk+lYHX3x2G1Yw1UUtwqR39Bx3jqyL5arRLF9XtQk= X-Google-Smtp-Source: ABdhPJz+8CB1r3WonOf0/JOglak4rLpqZ0GQjVA/pk+GQ6kgAxREAhDK/7jDdnVgp+MA6S4N3qJa/eOlIr+MJuOxeU4= X-Received: by 2002:a02:3541:: with SMTP id y1mr5550931jae.66.1609975846697; Wed, 06 Jan 2021 15:30:46 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Mikhail Chekhov Date: Thu, 7 Jan 2021 01:30:35 +0200 Message-ID: To: cl-isabelle-users at lists.cam.ac.uk Content-Type: multipart/alternative; boundary="00000000000070872405b843b620" Subject: Re: [isabelle] Questions about "transfer" X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 23:30:49 -0000 --00000000000070872405b843b620 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear All, I would like to thank Andreas Lochbihler for providing a more elaborate answer in the following post: https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2021-January/msg00038.h= tml. I believe that there is one notable difference in our answers. More specifically, the answer that was given by Andreas Lochbihler to question 5 > Is there any trick for proving transfer rules for constants defined > by "inductive" or "fun" that I am unaware of? Doing the induction proofs > manually is very tedious. > > is as follows: > I have looked into this previously. For inductive, I had a few ideas but > eventually > realized that it doesn't play well together with the current architecture > of transfer. The > problem is that like for the predicate compiler, an inductive definition > may have > different computational interpretations (modes in logic programming speak= ) > and those > interpretations lead to different relators in the resulting transfer rule > (predicates vs. > sets). While it's possible to convert between predicates and sets, this > requires > additional assumptions about the relations (typically bi_totality). > However, as transfer > does not really support multiple relators for the same type constructor, > such a solution > would be problematic. Moreover, there may be exponentially many transfer > rules for an > inductive predicate, in particular if you do a higher-order mode analysis > similar to > Lukas' work for the predicate compiler, so we'd end up creating an > exponential number of > transfer rules. > > My own answer is also provided for reference: > Yes, there is: see > https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg00072= .html. > I would like to add to the suggestion in the post that, technically, ther= e > is little that is stopping one from recovering the original definitional > axiom in Isabelle/ML using Thm.axiom (e.g. see the implementation of UD i= n > https://gitlab.com/user9716869/Isabelle-Complement-Library, but keep in > mind that it is still in a reasonably rough experimental state) instead o= f > using the collection of theorems associated with nitpick. Providing furth= er > automation for this is on my own "to do" list, but it has a very low > priority. If you decide to make an attempt to generalize/automate this > idea, I would highly appreciate it if you could let me know about this to > avoid possible duplication of efforts. > > I would like to make an attempt to resolve any confusion that this discrepancy may have caused. The scope of my answer was significantly more narrow. More specifically, my answer assumes that, given a constant c (defined as an inductive predicate), there is a term t (normally, also defined with the help of an inductive predicate), a parametricity relation R for the type of c, constructed under the assumption that the relators for every non-nullary type constructor are known in advance and some side conditions on the involved relations, also known in advance. Then, if the transfer rule R t c exists under the aforementioned side conditions, then its proof can often be automated using the transfer prover, assuming the existence of the transfer rules for the constant lfp under compatible side conditions, as showcased in https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg00072.h= tml. The transfer rules for the lfp can often cover a significant number of similar applications, possibly allowing for some degree of proof automation. However, of course, as can be inferred from the answer given by Andreas Lochbihler, it is hardly a fundamental solution. After all, the OP asked for a 'trick' that could help to reduce the size of the proof, and I tried to oblige by providing a trick :-). Kind Regards, Mikhail Chekhov On Wed, Jan 6, 2021 at 1:20 AM Mikhail Chekhov wrote: > Dear Manuel Eberl/All, > > I will allow myself to provide a few remarks as a regular user of the > transfer infrastructure. Certainly, my own understanding of the framework > is still somewhat limited. However, hopefully, my advice will help to get > rid of the questions that are less difficult. > > >> 1. It seems to me that "transfer" always transfers theorems >> "left-to-right". For the "transferred" attribute, there is >> "untransferred" =E2=80=93 is there a similar thing for "transfer" as wel= l? >> >> > Similar questions have been asked before and the answer seems to be > negative ( > https://lists.cam.ac.uk/mailman/htdig/cl-isabelle-users/2019-July/msg0001= 3.html > ). > > >> 3. Sometimes, it is more convenient to prove transfer rules for >> functions following the pattern >> lemma >> assumes [transfer_rule]: "r1 a b" "r2 c d" >> shows "r3 (f a c) (f' b d)" >> but if I declare that lemmas as a transfer_rule, it is not used. I have >> to explicitly prove "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" from this fo= r it to be >> used. Is there some way around this? >> >> > In certain circumstances, the rules stated in a similar format can be > used. For example, > > context > includes lifting_syntax > fixes r1 r2 r3 :: "'a =E2=87=92 'b =E2=87=92 bool" > and f :: "'a =E2=87=92 'a =E2=87=92 'a" and f' :: "'b =E2=87=92 'b = =E2=87=92 'b" > assumes [transfer_rule]: "bi_unique r3" > and [transfer_rule]: "r1 a b =E2=9F=B9 r2 c d =E2=9F=B9 r3 (f a c) (f= ' b d)" > begin > > lemma > assumes [transfer_rule]: "r1 a b" "r2 c d" > shows "f' b d =3D f' b d" > by transfer (rule refl) > > end > > In this case, "r1 a b" and "r2 c d" are treated as side conditions, and > the transfer infrastructure has some limited support for such > unconventional side conditions (however, I am not certain as to what is t= he > extent of such support). > > If it is more convenient to prove a transfer rule in the form that you > have stated, then you can always use (intro rel_funI) to perform the > conversion, e.g. > > lemma > includes lifting_syntax > shows "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" > apply(intro rel_funI) > (*=E2=8B=80x y xa ya. r1 x y =E2=9F=B9 r2 xa ya =E2=9F=B9 r3 (f x xa) (= f' y ya)*) > > >> 5. Is there any trick for proving transfer rules for constants defined >> by "inductive" or "fun" that I am unaware of? Doing the induction proofs >> manually is very tedious. >> >> > Yes, there is: see > https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg00072= .html. > I would like to add to the suggestion in the post that, technically, ther= e > is little that is stopping one from recovering the original definitional > axiom in Isabelle/ML using Thm.axiom (e.g. see the implementation of UD i= n > https://gitlab.com/user9716869/Isabelle-Complement-Library, but keep in > mind that it is still in a reasonably rough experimental state) instead o= f > using the collection of theorems associated with nitpick. Providing furth= er > automation for this is on my own "to do" list, but it has a very low > priority. If you decide to make an attempt to generalize/automate this > idea, I would highly appreciate it if you could let me know about this to > avoid possible duplication of efforts. > > >> 7. In measure theory, there is the definition >> nn_integral :: 'a measure =E2=87=92 ('a =E2=87=92 ennreal) =E2=87=92 e= nnreal >> nn_integral M f =3D >> Sup (simple_integral M ` >> {g. simple_function M g =E2=88=A7 g =E2=89=A4 f}) >> I was able to prove >> lemma transfer_nn_integral [transfer_rule]: >> assumes [transfer_rule]: "bi_unique r" >> shows "(rel_measure r =3D=3D=3D> (r =3D=3D=3D> (=3D)) =3D=3D=3D> (=3D)= ) >> nn_integral nn_integral" >> but I needed some trickery to avoid "bi_total r" due to the use of >> "Collect". The reason why it works is that "simple_integral" only >> evaluates the function on values from "space M", so we can replace the >> set in question by >> {g. simple_function M g =E2=88=A7 (=E2=88=80x. x =E2=88=89 space M =E2= =9F=B6 f x =3D 0) =E2=88=A7 >> =E2=88=80x=E2=88=88space M. g x =E2=89=A4 f x} >> which can be shown (with quite a bit of pain!) to be parametric. >> Is there some trick to make any of this easier? >> >> > I cannot be certain, but it appears that a pattern similar to the one tha= t > you suggest was used in published work by those whom I would consider to = be > well-versed in the functionality of transfer (e.g. see the code associate= d > with [1]). Thus, it is likely that the problem does not have a generic > solution. However, I would be happy to be wrong about this, as my own wor= k > would benefit from having such a solution. > > In this context, I wonder if the types of algorithms used in the work of > Peter Lammich (e.g. [2] and other related articles) would handle this > scenario. I would certainly appreciate any comments from him. > > >> 8. Is there any way of telling the transfer package that some rules have >> higher priority than others? >> >> > A slightly hacky way would be to simply rearrange the transfer_raw > programmatically, as you need. Practically, in most circumstances, this > should not be needed. One can always write lemmas [transfer_rule] =3D > (*relevant rules that need to have a higher priority*). The duplicates wi= ll > not be produced: the theorems in transfer_raw will simply be rearranged > with the restated rules at the top of the list. > > Kind Regards, > Mikhail Chekhov > > [1]. Immler F, Zhan B. Smooth Manifolds and Types to Sets for Linear > Algebra in Isabelle/HOL. In: 8th ACM SIGPLAN International Conference on > Certified Programs and Proofs. New York: ACM; 2019. p. 65=E2=80=9377. (CP= P 2019). > [2]. Lammich P. Automatic Data Refinement. In: Blazy S, Paulin-Mohring C, > Pichardie D, editors. Interactive Theorem Proving. Heidelberg: Springer; > 2013. p. 84=E2=80=9399. > --00000000000070872405b843b620 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear All,

I would like to thank And= reas Lochbihler for providing a more elaborate answer in the following post= :=C2=A0https://lists.cam.ac.uk/pipermail/cl-isabelle-users/= 2021-January/msg00038.html. I believe that there is one notable differe= nce in our answers. More specifically, the answer that was given by Andreas= Lochbihler to question 5=C2=A0


Is there any trick for proving transfer rule= s for constants defined
by "inductive" or "fun" that= I am unaware of? Doing the induction proofs
manually is very tedious.

is as follows:

<= blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-l= eft:1px solid rgb(204,204,204);padding-left:1ex">
I have looked into thi= s previously. For inductive, I had a few ideas but eventually
realized = that it doesn't play well together with the current architecture of tra= nsfer. The
problem is that like for the predicate compiler, an inductiv= e definition may have
different computational interpretations (modes in= logic programming speak) and those
interpretations lead to different r= elators in the resulting transfer rule (predicates vs.
sets). While it&= #39;s possible to convert between predicates and sets, this requires
ad= ditional assumptions about the relations (typically bi_totality). However, = as transfer
does not really support multiple relators for the same type= constructor, such a solution
would be problematic. Moreover, there may= be exponentially many transfer rules for an
inductive predicate, in pa= rticular if you do a higher-order mode analysis similar to
Lukas' w= ork for the predicate compiler, so we'd end up creating an exponential = number of
transfer rules.


My ow= n answer is also provided for reference:


Yes, there is: see https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg000= 72.html. I would like to add to the suggestion in the post that, techni= cally, there is little that is stopping one from recovering the original de= finitional axiom in Isabelle/ML using Thm.axiom (e.g. see the implementatio= n of UD in https://gitlab.com/user9716869/Isabelle-Complement-Library, but = keep in mind that it is still in a reasonably rough experimental state) ins= tead of using the collection of theorems associated with nitpick. Providing= further automation for this is on my own "to do" list, but it ha= s a very low priority. If you decide to make an attempt to generalize/autom= ate this idea, I would highly appreciate it if you could let me know about = this to avoid possible duplication of efforts.=C2=A0


I would like to make an attempt to resolve any confusion = that this discrepancy may have caused. The scope of my answer was significa= ntly more narrow. More specifically, my answer assumes that, given a consta= nt c (defined as an inductive predicate), there is a term t (normally, also= defined with the help of an inductive predicate), a parametricity relation= R for the type of c, constructed under the assumption that the relators fo= r every non-nullary type constructor are known in advance and some side con= ditions on the involved relations, also known in advance. Then, if the tran= sfer rule R t c exists under the aforementioned side conditions, then its p= roof can often be automated using the transfer prover, assuming the existen= ce of the transfer rules for the constant lfp under compatible side conditi= ons, as showcased in=C2=A0https://lists.cam.ac.uk/pipermail= /cl-isabelle-users/2019-January/msg00072.html. The transfer rules for t= he lfp can often cover a significant number of similar applications, possib= ly allowing for some degree of proof automation. However, of course, as can= be inferred from the answer given by Andreas Lochbihler, it is hardly a fu= ndamental solution. After all, the OP asked for a 'trick' that coul= d help to reduce the size of the proof, and I tried to oblige by providing = a trick :-).=C2=A0

Kind Regards,
Mikhail= Chekhov

On Wed, Jan 6, 2021 at 1:20 AM Mikhail Chekhov <mikhail.chekhov.w at gmail.com>= wrote:
Dear Manuel Eberl/All,

I will allow myself to p= rovide a few remarks=C2=A0as a regular user of the transfer infrastructure.= Certainly, my own understanding of the framework is still somewhat limited= . However, hopefully, my advice will help to get rid of the questions that = are less difficult.

https://lists.cam.ac.uk/mailman/htd= ig/cl-isabelle-users/2019-July/msg00013.html).=C2=A0


3. Sometimes, it is more conveni= ent to prove transfer rules for
functions following the pattern
lemma=
=C2=A0 assumes [transfer_rule]: "r1 a b" "r2 c d"=C2=A0 shows =C2=A0 "r3 (f a c) (f' b d)"
but if I decla= re that lemmas as a transfer_rule, it is not used. I have
to explicitly = prove "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3) f f'" from this= for it to be
used. Is there some way around this?

<= /div>

In certain circumstances, the rules stated in a si= milar format can be used. For example,

context =C2=A0 includes lifting_syntax
=C2=A0 fixes r1 r2 r3 :: "'a = =E2=87=92 'b =E2=87=92 bool"
=C2=A0 =C2=A0 and f :: "'= a =E2=87=92 'a =E2=87=92 'a" and f' :: "'b =E2=87= =92 'b =E2=87=92 'b"
=C2=A0 assumes [transfer_rule]: "= bi_unique r3"
=C2=A0 =C2=A0 and [transfer_rule]: "r1 a b =E2= =9F=B9 r2 c d =E2=9F=B9 r3 (f a c) (f' b d)"
begin

lemma=
=C2=A0 assumes [transfer_rule]: "r1 a b" "r2 c d" = =C2=A0
=C2=A0 shows "f' b d =3D f' b d"
=C2=A0 by t= ransfer (rule refl)

end

In this case, "r1 a b" and = "r2 c d" are treated as side conditions, and the transfer infrast= ructure has some limited support for such unconventional side conditions (h= owever, I am not certain as to what is the extent of such support).

If it is more convenient to prove a transfer rule in the = form that you have stated, then you can always use (intro rel_funI) to perf= orm the conversion, e.g.

lemma
=C2=A0 includes= lifting_syntax
=C2=A0 shows "(r1 =3D=3D=3D> r2 =3D=3D=3D> r3= ) f f'"
=C2=A0 apply(intro rel_funI)
=C2=A0 (*=E2= =8B=80x y xa ya. r1 x y =E2=9F=B9 r2 xa ya =E2=9F=B9 r3 (f x xa) (f' y = ya)*)


5.= Is there any trick for proving transfer rules for constants defined
by = "inductive" or "fun" that I am unaware of? Doing the in= duction proofs
manually is very tedious.


Yes, there is: see=C2=A0https://= lists.cam.ac.uk/pipermail/cl-isabelle-users/2019-January/msg00072.html.= I would like to add to the suggestion in the post that, technically, there= is little that is stopping one from recovering the original definitional a= xiom in Isabelle/ML using Thm.axiom (e.g. see the implementation of UD in <= a href=3D"https://gitlab.com/user9716869/Isabelle-Complement-Library" targe= t=3D"_blank">https://gitlab.com/user9716869/Isabelle-Complement-Library= , but keep in mind that it is still in a reasonably rough experimental stat= e) instead of using the collection of theorems associated with nitpick. Pro= viding further automation for this is on my own "to do" list, but= it has a very low priority. If you decide to make an attempt to generalize= /automate this idea, I would highly appreciate it if you could let me know = about this to avoid possible duplication of efforts.=C2=A0


7. In measure theory, t= here is the definition
=C2=A0 nn_integral :: 'a measure =E2=87=92 (&= #39;a =E2=87=92 ennreal) =E2=87=92 ennreal
=C2=A0 nn_integral M f =3D=C2=A0 =C2=A0 Sup (simple_integral M `
=C2=A0 =C2=A0 {g. simple_functio= n M g =E2=88=A7 g =E2=89=A4 f})
I was able to prove
lemma transfer_nn= _integral [transfer_rule]:
=C2=A0 assumes [transfer_rule]: "bi_uniq= ue r"
=C2=A0 shows "(rel_measure r =3D=3D=3D> (r =3D=3D=3D&= gt; (=3D)) =3D=3D=3D> (=3D))
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0nn_int= egral nn_integral"
but I needed some trickery to avoid "bi_tot= al r" due to the use of
"Collect". The reason why it work= s is that "simple_integral" only
evaluates the function on val= ues from "space M", so we can replace the
set in question by=C2=A0 {g. simple_function M g =E2=88=A7 (=E2=88=80x. x =E2=88=89 space M= =E2=9F=B6 f x =3D 0) =E2=88=A7
=C2=A0 =C2=A0 =C2=A0 =E2=88=80x=E2=88=88= space M. g x =E2=89=A4 f x}
which can be shown (with quite a bit of pain= !) to be parametric.
Is there some trick to make any of this easier?
=

I cannot be certain, but it appe= ars that a pattern similar to the one that you suggest was used in publishe= d work by those whom I would consider to be well-versed in the functionalit= y of transfer (e.g. see the code associated with [1]). Thus, it is likely t= hat the problem does not have a generic solution. However, I would be happy= to be wrong about this, as my own work would benefit from having such a so= lution.=C2=A0

In this context, I wonder if the typ= es of algorithms used in the work of Peter Lammich (e.g. [2] and other rela= ted articles) would handle this scenario. I would certainly appreciate any = comments from him.


8. Is there any way of telling the transfer package that some r= ules have
higher priority than others?


A slightly hacky way would be to simply rearrange the transfer_raw progra= mmatically, as you need. Practically, in most circumstances, this should no= t be needed. One can always write lemmas [transfer_rule] =3D (*relevant rul= es that need to have a higher priority*). The duplicates will not be produc= ed: the theorems in transfer_raw will simply be rearranged with the restate= d rules at the top of the list.

Kind Regards,
Mikhail Chekhov

[1]. Immler F, Zhan B. Smoot= h Manifolds and Types to Sets for Linear Algebra in Isabelle/HOL. In: 8th A= CM SIGPLAN International Conference on Certified Programs and Proofs. New Y= ork: ACM; 2019. p. 65=E2=80=9377. (CPP 2019).=C2=A0
[2]. Lamm= ich P. Automatic Data Refinement. In: Blazy S, Paulin-Mohring C, Pichardie = D, editors. Interactive Theorem Proving. Heidelberg: Springer; 2013. p. 84= =E2=80=9399.=C2=A0
--00000000000070872405b843b620-- From andrei.h.popescu at gmail.com Wed Jan 06 17:12:26 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:55580) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxCME-0002Xt-U9 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 17:12:26 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885096 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.160.177 listed in list.dnswl.dnsbl.ja.net] * 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [209.85.160.177 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [andrei.h.popescu[at]gmail.com] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-qt1-f177.google.com ([209.85.160.177]:40729) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kxCMD-000YLe-fL (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Wed, 06 Jan 2021 17:12:26 +0000 Received: by mail-qt1-f177.google.com with SMTP id v5so2472627qtv.7 for ; Wed, 06 Jan 2021 09:12:25 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=xme78KukGmJGlZLCNKEGbN1q6rZs7+ubrh4Jj261u8o=; b=dtNalxrpmDwWUTsNxCFOfMkqV7RIlAvs0/tTsvI53GKuxMpVhIIdaix5aWTwiW8BpI B98OqCE2zgCMV69Adj5ZQx2Y4l9SaVnPB1oJCrpTFs6vZTBfKKZnXLbu4OCn0zR0h0tb dB/GCjU0TEkGCp/VyA7XSut/SiNRzdEZUdlfYKOnmlRbtUNYYWXVscq+/Vax7qKkEtEi t9amGGIEsZZHIijDhmZHvpUuiXrqFskSxZh676lUKiN9gq0mAE2cuGO1/4QDOYVtrq+S IzRqHX7aRIlAqQpGYQQSuZzE32weCJutkgaFmzVgLPzA9I5TKZUDrD2zyI0ypOT0cKjf iM3w== X-Gm-Message-State: AOAM530c8KiC6hZpYn1scIKA+XrpKCw84fXpO7BItqPigpmNXLgEcRx6 +YvWbnAM6ttztSZdf374L0KxIe73Wt7g1oZuzqkUN4PvEgA= X-Google-Smtp-Source: ABdhPJxoyHoRfWnluiVysHa2YIbKzh14iYdk1qx4sg0ZIcZdsePXs8VI2sID9Q9LnVpYl9VzdR+gQsUuNJf8WO1JTZ8= X-Received: by 2002:aed:3165:: with SMTP id 92mr4915522qtg.388.1609953144693; Wed, 06 Jan 2021 09:12:24 -0800 (PST) MIME-Version: 1.0 From: Andrei Popescu Date: Wed, 6 Jan 2021 17:12:14 +0000 Message-ID: To: cl-isabelle-users at lists.cam.ac.uk, coq-club at inria.fr, hol-info at lists.sourceforge.net, lean-user at googlegroups.com, agda at lists.chalmers.se Content-Type: text/plain; charset="UTF-8" X-Mailman-Approved-At: Thu, 07 Jan 2021 10:18:50 +0000 Cc: a.popescu at sheffield.ac.uk Subject: [isabelle] fully funded PhD position on verification of industrial robots at University of Sheffield -- application deadline coming soon (Jan. 13) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2021 17:12:27 -0000 Greetings, This fast approaching deadline could be of interest to UK or EU residents currently looking for a PhD position and willing to start in mid February. It is an opportunity to do high impact verification research in an excellent academic environment. Background in robotics is not required. The program is for 3.5 years, with no teaching obligations. There is the possibility to work remotely until the pandemic is over. The PhD will be supervised by myself (https://www.andreipopescu.uk/) in collaboration with experts from Sheffield's Advanced Manufacturing Research Centre (https://www.amrc.co.uk/). So far, my students have published in top tier conferences such as CAV, LICS, ICFP, IJCAR, POPL and Oakland S&P on the topics of their PhD and MSc dissertations. More details on the position can be found at: https://www.findaphd.com/phds/project/formal-specification-and-verification-of-the-safe-interaction-between-humans-and-industrial-robots/?p127388 Please feel free to contact me with any questions. Best wishes, Andrei From makarius at sketis.net Thu Jan 07 13:57:52 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:52280) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxVnU-0007s2-EP (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Thu, 07 Jan 2021 13:57:52 +0000 X-Cam-SpamDetails: score -0.6 from SpamAssassin-3.4.4-1885183 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [46.38.247.119 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([46.38.247.119]:45055) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxVnT-000EdV-fU (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Thu, 07 Jan 2021 13:57:52 +0000 Received: from mors-relay-8404.netcup.net (localhost [127.0.0.1]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4DBSVR0Fpcz8THB; Thu, 7 Jan 2021 14:57:51 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8404.netcup.net (Postfix) with ESMTPS id 4DBSVQ6xD4z4xVV; Thu, 7 Jan 2021 14:57:50 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4DBSVP6fg7z8t2k; Thu, 7 Jan 2021 14:57:49 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-51.dynamic.mnet-online.de [62.216.204.51]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 73B06A0F64; Thu, 7 Jan 2021 14:57:49 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.51) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Mathias Fleury , "cl-isabelle-users at lists.cam.ac.uk" References: <91b26add-8e71-0905-ae47-c7b6481a9ce6 at gmail.com> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= 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 NMc= Message-ID: <8412cef7-4fb9-a7bc-d783-5b61d49bc09c at sketis.net> Date: Thu, 7 Jan 2021 14:57:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <91b26add-8e71-0905-ae47-c7b6481a9ce6 at gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <161002786962.7927.12220513400035750007 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: EQv0VF65l6kqqQRUU1hs7NY9utD3OM5Ww/ulumSCwh07O3Y= Subject: Re: [isabelle] Isabelle2021-RC1 - error highlighting X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jan 2021 13:57:52 -0000 On 06/01/2021 15:42, Mathias Fleury wrote: > > The error highlighting does not include the tactics anymore: > > > Is that the expected behavior? I find error harder to find in a buffer. So what is actually the error? (It would be better to have a reproducible example). Here is an example that works: theory Scratch imports FOL begin lemma A B C by auto end As expected, the error for the proof method (not tactic) "auto" is "Failed to apply initial proof method" over the text "auto". Makarius From mathias.fleury12 at gmail.com Thu Jan 07 15:40:29 2021 Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]:56268) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxXOn-0005Kg-FU (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Thu, 07 Jan 2021 15:40:29 +0000 X-Cam-SpamScore: s X-Cam-SpamDetails: score 1.3 from SpamAssassin-3.4.4-1885183 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [209.85.221.46 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [209.85.221.46 listed in wl.mailspike.net] * 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in * digit * [mathias.fleury12[at]gmail.com] * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * [mathias.fleury12[at]gmail.com] * 0.0 HTML_MESSAGE BODY: HTML included in message * 1.6 HTML_IMAGE_ONLY_24 BODY: HTML: images with 2000-2400 bytes of words * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.3 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail-wr1-f46.google.com ([209.85.221.46]:46630) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kxXOm-000yD4-lM (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Thu, 07 Jan 2021 15:40:29 +0000 Received: by mail-wr1-f46.google.com with SMTP id d13so6015610wrc.13 for ; Thu, 07 Jan 2021 07:40:28 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=Jf8EuViQfu6lV1gFMgzmChCh+tORHUi9VRg6yFmWAPA=; b=KmObNAluF+32xoq0YrBNAW/8o8iyg5kPdGWqkm9wW1ujIjfwN4Xag7eBf4zxtmlhHe G7NG9ghmq7DUbXmIJPIUtEqUi5nvQL2s/gbth1v8GSYhjoI79RSsbz/X9wH3XbOnEZp4 q1yp26oeauWInWUHY+Y8CamYymB75cpmVjOZqfyLL/PnwqqsOhK4nBGMCQdQWOTyxMFQ PwA69S8bhRlMIuASgB6KKAqU8A+2kIxJP+MGK9yFhMb3Kvv7dQU8NZAzdiJR+O3F+tlW ePbMC21hd0eXUpandNOSOC9JyI9U9U4+ATXCwPN3+dB5QBn+kVHr36D9IAgE+sJ/HWfa lZSg== X-Gm-Message-State: AOAM532Ugc3/DPTmHkpT+a/TPoNs7g4bEaxp/E+iXeXSor29qxsEgtcF 2GOEwBoM6m4UV0ak0ETe5QSxVoTPlHRO X-Google-Smtp-Source: ABdhPJwNTVtwU5/7gMdw3kzTamLyibeuOGVNz7rJHECZYPSep9im+2IqhGxJHYhmpjJK+wlmF6IsYw== X-Received: by 2002:a5d:558a:: with SMTP id i10mr9742219wrv.363.1610034028310; Thu, 07 Jan 2021 07:40:28 -0800 (PST) Received: from ?IPv6:2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd? ([2a02:1748:dd5e:5950:4f16:50b7:ca4e:54fd]) by smtp.gmail.com with ESMTPSA id o3sm8145440wrc.93.2021.01.07.07.40.26 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 07 Jan 2021 07:40:27 -0800 (PST) To: Makarius , "cl-isabelle-users at lists.cam.ac.uk" References: <91b26add-8e71-0905-ae47-c7b6481a9ce6 at gmail.com> <8412cef7-4fb9-a7bc-d783-5b61d49bc09c at sketis.net> From: Mathias Fleury Message-ID: <874d3b63-a9ec-f6e7-cfed-c46274fa9941 at gmail.com> Date: Thu, 7 Jan 2021 16:40:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: <8412cef7-4fb9-a7bc-d783-5b61d49bc09c at sketis.net> Content-Type: multipart/alternative; boundary="------------00140C199E1A1EB5EE1302F2" Content-Language: en-US Subject: Re: [isabelle] Isabelle2021-RC1 - error highlighting X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jan 2021 15:40:29 -0000 This is a multi-part message in MIME format. --------------00140C199E1A1EB5EE1302F2 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Hello Makarius, The error is that the red error highlighting (the big red background that is shown in Isabelle/jEdit) does not extend past the "by". Here a screenshot with Isabelle 2020 and 2021-RC1 for comparison: I prefer the old behavior, but the new one is consistent. This happens on every error wrong "by", which is why I did not provide a theory. The one from the screenshot is: theory Scratch   imports Main begin lemma A B C by auto end Mathias On 07/01/2021 14:57, Makarius wrote: > On 06/01/2021 15:42, Mathias Fleury wrote: >> The error highlighting does not include the tactics anymore: >> >> >> Is that the expected behavior? I find error harder to find in a buffer. > So what is actually the error? (It would be better to have a reproducible > example). > > > Here is an example that works: > > theory Scratch > imports FOL > begin > > lemma A B C by auto > > end > > > As expected, the error for the proof method (not tactic) "auto" is "Failed to > apply initial proof method" over the text "auto". > > > Makarius --------------00140C199E1A1EB5EE1302F2 Content-Type: multipart/related; boundary="------------0D87B6E42825D307B113117E" --------------0D87B6E42825D307B113117E Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit

Hello Makarius,


The error is that the red error highlighting (the big red background that is shown in Isabelle/jEdit) does not extend past the "by". Here a screenshot with Isabelle 2020 and 2021-RC1 for comparison:

I prefer the old behavior, but the new one is consistent. This happens on every error wrong "by", which is why I did not provide a theory. The one from the screenshot is:

theory Scratch          
  imports Main
begin
lemma A B C by auto
end


Mathias

On 07/01/2021 14:57, Makarius wrote:
On 06/01/2021 15:42, Mathias Fleury wrote:
The error highlighting does not include the tactics anymore:


Is that the expected behavior? I find error harder to find in a buffer.
So what is actually the error? (It would be better to have a reproducible
example).


Here is an example that works:

theory Scratch
  imports FOL
begin

lemma A B C by auto

end


As expected, the error for the proof method (not tactic) "auto" is "Failed to
apply initial proof method" over the text "auto".


	Makarius
--------------0D87B6E42825D307B113117E Content-Type: image/png; name="ffianododginnbng.png" Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: inline; filename="ffianododginnbng.png" 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 0dxnAP0Xgui9eWNyKbYAAAAASUVORK5CYII= --------------0D87B6E42825D307B113117E-- --------------00140C199E1A1EB5EE1302F2-- From mahonybp at tpg.com.au Fri Jan 08 04:09:48 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:58350) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxj5w-0007xm-KO (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 04:09:48 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885236 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [203.12.160.162 listed in list.dnswl.dnsbl.ja.net] * 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [203.12.160.162 listed in wl.mailspike.net] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:39991) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxj5v-0007N9-el (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 04:09:48 +0000 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kxj5u-0000nW-CS for isabelle-users at cl.cam.ac.uk; Fri, 08 Jan 2021 04:09:46 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885236 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [203.12.160.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [203.12.160.162 listed in wl.mailspike.net] * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mail12.tpgi.com.au ([203.12.160.162]:55166) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtp id 1kxj5s-000pHx-K2 (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Fri, 08 Jan 2021 04:09:45 +0000 X-TPG-Abuse: host=[120.20.55.163]; ip=120.20.55.163; date=Fri, 8 Jan 2021 15:09:38 +1100; auth=AAencXKQW0nBfuZkM7owfvH37M2zSnRP6jLqEA1lXd8= Received: from [192.168.43.225] ([120.20.55.163]) (authenticated bits=0) by mail12.tpgi.com.au (envelope-from mahonybp at tpg.com.au) (8.14.3/8.14.3) with ESMTP id 10849Zpc010021 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 8 Jan 2021 15:09:38 +1100 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\)) From: "Dr. Brendan Patrick Mahony" In-Reply-To: <823facbe-64dd-24f5-4fcb-0784fcf68205 at sketis.net> Date: Fri, 8 Jan 2021 14:39:34 +1030 Content-Transfer-Encoding: quoted-printable Message-Id: References: <823facbe-64dd-24f5-4fcb-0784fcf68205 at sketis.net> To: Makarius X-Mailer: Apple Mail (2.3654.40.0.2.32) X-debug-header: local_aliases has suffix Cc: Isabelle Subject: Re: [isabelle] Custom fonts in browser_info html? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 04:09:48 -0000 I guess I am something of a crank in this respect, but I have edited a = custom copy of IsabelleDejaVuSansMono mainly with copies of existing = glyphs inserted in the "free space=E2=80=9D areas of UNICODE. This lets = me do things like have several <=3D characters for different order-like = applications and avoid both ugly maths and ambiguous syntax. Obviously it would be easier if several isasymbols could be bound to the = same glyph code in the symbols file. Also have some composite glyphs, more maths alpha-numerics and other = custom jobs. It would also be nice if some of these custom glyphs could be used in = variable names. Brendan > On 3 Jan 2021, at 10:33 pm, Makarius wrote: >=20 > On 06/04/2020 02:50, Dr. Brendan Patrick Mahony wrote: >> Is there an approved/supported facility for handling symbol glyphs = from custom fonts in the html generated in the html files generated by=20= >> "build -o browser_info=E2=80=9D? >>=20 >> At first blush it seems to ignore the font information in the symbols = file and just expects the glyph to be in IsabelleDejaVuSansMono.ttf. >>=20 >=20 > A rather old thread, but still current: in the past few weeks I have = reworked > the HTML output a lot, a some details might still change for = Isabelle2021 > (February 2021). >=20 > I don't forsee ways to specify fonts right now, but maybe you want to = explain > your application. Which font, which glyphs are you using in = particular? >=20 >=20 > Makarius >=20 >=20 From makarius at sketis.net Fri Jan 08 15:29:36 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:50054) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxtho-0002o2-DT (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 15:29:36 +0000 X-Cam-SpamDetails: score -0.5 from SpamAssassin-3.4.4-1885236 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta1.cl.cam.ac.uk ([128.232.0.57]:60657) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxthn-000HfG-fX (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 15:29:36 +0000 Received: from ppsw-40.csi.cam.ac.uk ([2001:630:212:8::e:f40]) by mta1.cl.cam.ac.uk with esmtp (Exim 4.90_1) (envelope-from ) id 1kxthn-000150-1N for isabelle-users at cl.cam.ac.uk; Fri, 08 Jan 2021 15:29:35 +0000 X-Cam-SpamDetails: score -0.5 from SpamAssassin-3.4.4-1885236 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.162 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.162]:40463) by ppsw-40.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxthl-0009XU-m2 (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Fri, 08 Jan 2021 15:29:34 +0000 Received: from mors-relay-8201.netcup.net (localhost [127.0.0.1]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4DC6Tm1XFCz4SCC; Fri, 8 Jan 2021 16:29:32 +0100 (CET) Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4DC6Tm180dz4S2b; Fri, 8 Jan 2021 16:29:32 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.901 X-Spam-Level: X-Spam-Status: No, score=-2.901 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4DC6Tk6HGVz8tst; Fri, 8 Jan 2021 16:29:30 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-51.dynamic.mnet-online.de [62.216.204.51]) by mx2f26.netcup.net (Postfix) with ESMTPSA id 93F90A0FE5; Fri, 8 Jan 2021 16:29:29 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.51) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: "Dr. Brendan Patrick Mahony" References: <823facbe-64dd-24f5-4fcb-0784fcf68205 at sketis.net> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= mQINBFcrF+4BEADMcXMnu3XHg6bRsGe3tajAHqvm89+ecn/Y0WhjI2FplhkZs1LwM+ZA9eXh hiBrC/yX0FJ+qjzVIfm66CX4nzVG1f8qwaervMpvpA+gbhtQiXc0t+LDcqV+5cdtpKplPHSu oW+KzJKyCdkDB5fYMOzuaXQwYi12YAEQH2r6K7Q7Np+k82Xli1pWe+Tha/BH0pKJ5Q01aPep ASrNW9F+moX7C0fxWl65LiXGmF0UJep6fqKruhy8oNF4p6I2oZhktvaR/x6tkL2PkT3r+xUS 6g5i3BOjfwhoGY57nsioeK+8VFvdRH5DK4CbrTgDl7ddcrEeENrfpDiPLs/afVbe/T9oDXmJ OJAO4WMpfZNiFhx9SSVTHohw29Fyzn0N1UQGjPqAY1jg32DAxlnMQ0co/KabEFAcoQsW1/6U ZGiNxYVIyEKGrnSY4WuLuNC8CmU1RaYSdTk1y9tYdxufM9lH9ynzJwac6FdalOOxMR2G9JG8 L9/dk3ytlP6DVwkPBSCpJaTkTyMp1wSkF1oK/BDu5xKUQh0zvvLCuZ16hiKRBBSjpVExXRZC u+NC1Y4wqm1HOH7HBwgZ1Hv9S/EPmI9iwgcW0SpDJqPf2Cm7oFMZsZ5Dbs6/nOQoe4Zegy45 ymqDRlIekP7zj+vOoR80XAYfmAH5DElJHldcjmgLBMdpvvqGZwARAQABtB5NYWthcml1cyA8 bWFrYXJpdXNAc2tldGlzLm5ldD6JAj0EEwEIACcFAlcrF+4CGyMFCQlmAYAFCwkIBwIGFQgJ CgsCBBYCAwECHgECF4AACgkQ89KUEoG/TbiVrw/9FjEBgh2CB7Qof7Y4k0yc7j+x/A0Wmkc0 iwP5jaKJuxRv1JJT8CFqm392+/cdh3EkRUk/UWD+hpNndYJwxZltrEpKVqFAWoVOg3ZJ4cuI MYhlp4tk/T0KSl/gKT16dc6uJ7M/FzW0zv50vjFtAdianEDuqLXHKaGDUwWoOTDly0gdZ7aH /eNby6ONHUSJMdTNOErh2N+uESM4aZqUuuL/dTb6xiVzCpV5saT8EMakoazUd7QhoBaHvqfs BL7DEmvcTtA79GF3ufHrF/UndIcx8aMznZ2PGNjmy5seDCoKX0EYHdLam8vgo/TuU4dRw5Zn 6E/ouyNOliXT1Mn+SomeBSXTR5MXRq4TQ9MKVGiP0Yl+7GJQU0JFtDC1ZZEOyjIiwGWOhbUR pYujVm8C1iQ7NcEn2BqOAmRML6IR6+En4RLbgCNsBNXlmTPRJOaI+iV6DZzg3x9zcaDGhoYt jkBTEFpb0F3jU9yuaEU5401NV34fUxg8tqXs0R9CKinO7kQ8N+RDjyyY8k2KZiDYBJ6r+OK0 d7TaTj7F9tmpAu2pmQ8lxOKjDZIwlbGTsC4lxISmcPzBGTKXja5nakcWYx/lZ4vje0WZ12HN amnD1weakFixRYit0d+Kz7cuj684NSbhwC0oN2t9R06Nfq8UPEWRKEitCly0OtRgio8zVZ/L eAC5Ag0EVysX7gEQAKs5NVOvYkE/r8KLsJ8/L/9eulpJDOFilZ9fyuqii7t1UpHZLb58QghW JM+IB2GSGsB+pOi6Je7hmwxcVdXYbGlYZ4Btqqw48/XptfbNZ8alCk6AqoVFP4MbYxij/Qqv f/Yw6GR0p1RIC/W4GF/JgDDwDFEiMT6Pv6dpM8acdNFCERDZdoOJiC+XJRwy5lZ2g5FOJkT9 rVI9EnA7mBXLLjPOMUp2/eZxN6gKOZzI3ej9vixg3adWR2yfKPgacHP/ujnVfITOl0OyLE5f zIHq85dEV4zW6Mpx7+Um0tdkwlUVMaW2nQ1bcwejgVAuD/MLSF/lSs3N5D1ctw5QUemYh7/e 2dC12UJuFDFxNPzcltQTlkBCVWV1D0SjScDHdlF6HhzpZOlt52/rwTn5GHtY4nwAL4IJ+Yvl WX8YKmyILH4Ai8c/N2IVRERQ2qorWFlsQnqrXV+hXf8aUwjc/pq4K9rsWxvle3TpeZfoBefU /s1PEX0SepZFAqAXHlQ9DZPsdPDo9EFK695G5w4nf03EhE9TV1MKGUuc1XJ6f1ZLaxu0TwTA 6qYtKIyBcU0Yn61S2Kh7Dgb5LdLV8nfl71+n/xIt2IWH5UJ9YuwEgGEP0c6ImnAUZ+nRodFI 0RwtCWlRkSJWtQln1vcphrz8PjWZH6e/nWnceXR/Al5P0WexQgtvABEBAAGJAiUEGAEIAA8F AlcrF+4CGwwFCQlmAYAACgkQ89KUEoG/Tbh7VQ/9Fc4bdwJYc3jH/LiuXv6uMg50Cv6lg2NT bL9DClWGNiYzejfM2A4c5K+GRUXhyD7S9U203MOv3z7uTbtyQL8XVolNnQlRIkB00f8nJ2sw HMXx/hemjXBvtlneq+vrMORJexldXUMFq19ZZrvj0zZL+pUnGFqt+IWTEE5GpL7wu20Demaj jYyGyKcDZyJOWZcl4e45Yn3hl0EI2xVmVh7ZinVsb3+nqgcltFy4Jt+drezwV2EiLGJHfGsT jEQb3C9VpneU4Jo+hHtfqLK4Q8+WlIOzSfyvwbabxrhyqg7i11fu8yckNW3dCURPYigV07HK 4dN0zhj53M0Q3eTwegJRPJb8XoLDcSdbsaU2HIShlGDKmzS9KL4JzLikQ9dXROC4cae3jRKH aexFi4B55Ab6FxIfXj09wUCO6Nm0owDfIBDMgiywvi2Rb2etCjBgRbSj71S2nntd9ZitoYvE yKirLkWmJRbp3ln8cHi8Uc/jr1cDPVRWuLUN0uceMj5+AR+NZVakcNUHWJCinMMjacho0SyP QmocdU8pzzupreaVWruqaSzqcpWBPwrE5OxEtJ+OyIBjKmRJ5eptjh4rKgNaVnKjhqbvr+Yz pUAgPp38jjf4HJghUGIfWArKNelKJEJOYk94DAbmT67LgqEdZ0yaA2BCHmreN727WIzV9vkX NMc= Message-ID: Date: Fri, 8 Jan 2021 16:29:29 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <161011976972.3639.12054906295224495991 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: KZRXwikLIy8Zb27AGJwvj54s7FCcldgi0r0fwcRUEwco548= X-debug-header: local_aliases has suffix Cc: Isabelle Subject: Re: [isabelle] Custom fonts in browser_info html? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 15:29:36 -0000 On 08/01/2021 05:09, Dr. Brendan Patrick Mahony wrote: > I guess I am something of a crank in this respect, but I have edited a custom copy of IsabelleDejaVuSansMono mainly with copies of existing glyphs inserted in the "free space” areas of UNICODE. This lets me do things like have several <= characters for different order-like applications and avoid both ugly maths and ambiguous syntax. > > Obviously it would be easier if several isasymbols could be bound to the same glyph code in the symbols file. > > Also have some composite glyphs, more maths alpha-numerics and other custom jobs. > > It would also be nice if some of these custom glyphs could be used in variable names. This sounds like major changes to the standard setup. Can you show me this edited font privately, so that I get a better idea what you found missing? Makarius From makarius at sketis.net Fri Jan 08 20:17:48 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:45528) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxyCi-0008Mn-Ja (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 20:17:48 +0000 X-Cam-SpamDetails: score -0.5 from SpamAssassin-3.4.4-1885236 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [188.68.63.166 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.2 NICE_REPLY_A Looks like a legit reply (A) X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from relay.yourmailgateway.de ([188.68.63.166]:53723) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxyCh-0005hG-fi (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 20:17:48 +0000 Received: from mors-relay-8202.netcup.net (localhost [127.0.0.1]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4DCDtM24Thz4KDg; Fri, 8 Jan 2021 21:17:47 +0100 (CET) Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4DCDtM1gwbz4KCV; Fri, 8 Jan 2021 21:17:47 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy02-mors.netcup.net X-Spam-Flag: NO X-Spam-Score: -2.9 X-Spam-Level: X-Spam-Status: No, score=-2.9 required=6.31 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no Received: from mx2f26.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4DCDtK2HnMz8sjw; Fri, 8 Jan 2021 21:17:45 +0100 (CET) Received: from [192.168.178.32] (aftr-62-216-204-51.dynamic.mnet-online.de [62.216.204.51]) by mx2f26.netcup.net (Postfix) with ESMTPSA id C72E3A20EE; Fri, 8 Jan 2021 21:17:44 +0100 (CET) Authentication-Results: mx2f26; spf=pass (sender IP is 62.216.204.51) smtp.mailfrom=makarius at sketis.net smtp.helo=[192.168.178.32] Received-SPF: pass (mx2f26: connection is authenticated) To: Mathias Fleury , "cl-isabelle-users at lists.cam.ac.uk" References: <91b26add-8e71-0905-ae47-c7b6481a9ce6 at gmail.com> <8412cef7-4fb9-a7bc-d783-5b61d49bc09c at sketis.net> <874d3b63-a9ec-f6e7-cfed-c46274fa9941 at gmail.com> From: Makarius Autocrypt: addr=makarius at sketis.net; prefer-encrypt=mutual; keydata= mQINBFcrF+4BEADMcXMnu3XHg6bRsGe3tajAHqvm89+ecn/Y0WhjI2FplhkZs1LwM+ZA9eXh hiBrC/yX0FJ+qjzVIfm66CX4nzVG1f8qwaervMpvpA+gbhtQiXc0t+LDcqV+5cdtpKplPHSu oW+KzJKyCdkDB5fYMOzuaXQwYi12YAEQH2r6K7Q7Np+k82Xli1pWe+Tha/BH0pKJ5Q01aPep ASrNW9F+moX7C0fxWl65LiXGmF0UJep6fqKruhy8oNF4p6I2oZhktvaR/x6tkL2PkT3r+xUS 6g5i3BOjfwhoGY57nsioeK+8VFvdRH5DK4CbrTgDl7ddcrEeENrfpDiPLs/afVbe/T9oDXmJ OJAO4WMpfZNiFhx9SSVTHohw29Fyzn0N1UQGjPqAY1jg32DAxlnMQ0co/KabEFAcoQsW1/6U ZGiNxYVIyEKGrnSY4WuLuNC8CmU1RaYSdTk1y9tYdxufM9lH9ynzJwac6FdalOOxMR2G9JG8 L9/dk3ytlP6DVwkPBSCpJaTkTyMp1wSkF1oK/BDu5xKUQh0zvvLCuZ16hiKRBBSjpVExXRZC u+NC1Y4wqm1HOH7HBwgZ1Hv9S/EPmI9iwgcW0SpDJqPf2Cm7oFMZsZ5Dbs6/nOQoe4Zegy45 ymqDRlIekP7zj+vOoR80XAYfmAH5DElJHldcjmgLBMdpvvqGZwARAQABtB5NYWthcml1cyA8 bWFrYXJpdXNAc2tldGlzLm5ldD6JAj0EEwEIACcFAlcrF+4CGyMFCQlmAYAFCwkIBwIGFQgJ CgsCBBYCAwECHgECF4AACgkQ89KUEoG/TbiVrw/9FjEBgh2CB7Qof7Y4k0yc7j+x/A0Wmkc0 iwP5jaKJuxRv1JJT8CFqm392+/cdh3EkRUk/UWD+hpNndYJwxZltrEpKVqFAWoVOg3ZJ4cuI MYhlp4tk/T0KSl/gKT16dc6uJ7M/FzW0zv50vjFtAdianEDuqLXHKaGDUwWoOTDly0gdZ7aH /eNby6ONHUSJMdTNOErh2N+uESM4aZqUuuL/dTb6xiVzCpV5saT8EMakoazUd7QhoBaHvqfs BL7DEmvcTtA79GF3ufHrF/UndIcx8aMznZ2PGNjmy5seDCoKX0EYHdLam8vgo/TuU4dRw5Zn 6E/ouyNOliXT1Mn+SomeBSXTR5MXRq4TQ9MKVGiP0Yl+7GJQU0JFtDC1ZZEOyjIiwGWOhbUR pYujVm8C1iQ7NcEn2BqOAmRML6IR6+En4RLbgCNsBNXlmTPRJOaI+iV6DZzg3x9zcaDGhoYt jkBTEFpb0F3jU9yuaEU5401NV34fUxg8tqXs0R9CKinO7kQ8N+RDjyyY8k2KZiDYBJ6r+OK0 d7TaTj7F9tmpAu2pmQ8lxOKjDZIwlbGTsC4lxISmcPzBGTKXja5nakcWYx/lZ4vje0WZ12HN amnD1weakFixRYit0d+Kz7cuj684NSbhwC0oN2t9R06Nfq8UPEWRKEitCly0OtRgio8zVZ/L eAC5Ag0EVysX7gEQAKs5NVOvYkE/r8KLsJ8/L/9eulpJDOFilZ9fyuqii7t1UpHZLb58QghW JM+IB2GSGsB+pOi6Je7hmwxcVdXYbGlYZ4Btqqw48/XptfbNZ8alCk6AqoVFP4MbYxij/Qqv f/Yw6GR0p1RIC/W4GF/JgDDwDFEiMT6Pv6dpM8acdNFCERDZdoOJiC+XJRwy5lZ2g5FOJkT9 rVI9EnA7mBXLLjPOMUp2/eZxN6gKOZzI3ej9vixg3adWR2yfKPgacHP/ujnVfITOl0OyLE5f zIHq85dEV4zW6Mpx7+Um0tdkwlUVMaW2nQ1bcwejgVAuD/MLSF/lSs3N5D1ctw5QUemYh7/e 2dC12UJuFDFxNPzcltQTlkBCVWV1D0SjScDHdlF6HhzpZOlt52/rwTn5GHtY4nwAL4IJ+Yvl WX8YKmyILH4Ai8c/N2IVRERQ2qorWFlsQnqrXV+hXf8aUwjc/pq4K9rsWxvle3TpeZfoBefU /s1PEX0SepZFAqAXHlQ9DZPsdPDo9EFK695G5w4nf03EhE9TV1MKGUuc1XJ6f1ZLaxu0TwTA 6qYtKIyBcU0Yn61S2Kh7Dgb5LdLV8nfl71+n/xIt2IWH5UJ9YuwEgGEP0c6ImnAUZ+nRodFI 0RwtCWlRkSJWtQln1vcphrz8PjWZH6e/nWnceXR/Al5P0WexQgtvABEBAAGJAiUEGAEIAA8F AlcrF+4CGwwFCQlmAYAACgkQ89KUEoG/Tbh7VQ/9Fc4bdwJYc3jH/LiuXv6uMg50Cv6lg2NT bL9DClWGNiYzejfM2A4c5K+GRUXhyD7S9U203MOv3z7uTbtyQL8XVolNnQlRIkB00f8nJ2sw HMXx/hemjXBvtlneq+vrMORJexldXUMFq19ZZrvj0zZL+pUnGFqt+IWTEE5GpL7wu20Demaj jYyGyKcDZyJOWZcl4e45Yn3hl0EI2xVmVh7ZinVsb3+nqgcltFy4Jt+drezwV2EiLGJHfGsT jEQb3C9VpneU4Jo+hHtfqLK4Q8+WlIOzSfyvwbabxrhyqg7i11fu8yckNW3dCURPYigV07HK 4dN0zhj53M0Q3eTwegJRPJb8XoLDcSdbsaU2HIShlGDKmzS9KL4JzLikQ9dXROC4cae3jRKH aexFi4B55Ab6FxIfXj09wUCO6Nm0owDfIBDMgiywvi2Rb2etCjBgRbSj71S2nntd9ZitoYvE yKirLkWmJRbp3ln8cHi8Uc/jr1cDPVRWuLUN0uceMj5+AR+NZVakcNUHWJCinMMjacho0SyP QmocdU8pzzupreaVWruqaSzqcpWBPwrE5OxEtJ+OyIBjKmRJ5eptjh4rKgNaVnKjhqbvr+Yz pUAgPp38jjf4HJghUGIfWArKNelKJEJOYk94DAbmT67LgqEdZ0yaA2BCHmreN727WIzV9vkX NMc= Message-ID: Date: Fri, 8 Jan 2021 21:17:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <874d3b63-a9ec-f6e7-cfed-c46274fa9941 at gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <161013706499.585.14322099347767425645 at mx2f26.netcup.net> X-PPP-Vhost: sketis.net X-NC-CID: MJwkfqK++35+m2qyqbMqvLdIA2EFyrRhwYWDslxoL7bDBdY= Subject: Re: [isabelle] Isabelle2021-RC1 - error highlighting X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 20:17:48 -0000 On 07/01/2021 16:40, Mathias Fleury wrote: > > The error is that the red error highlighting (the big red background that is > shown in Isabelle/jEdit) does not extend past the "by". Here a screenshot with > Isabelle 2020 and 2021-RC1 for comparison: > > I prefer the old behavior, but the new one is consistent. This happens on > every error wrong "by", which is why I did not provide a theory. I have studied the history in more detail. The old behaviour was a consequence of changeset: 49037:d7a1973b063c user: wenzelm date: Fri Aug 31 14:35:04 2012 +0200 files: src/Pure/PIDE/command.scala src/Pure/goal.ML src/Tools/jEdit/src/isabelle_rendering.scala description: more markup for failed goal forks, reusing "bad"; The new behaviour is a consequence of The first bad revision is: changeset: 72699:eca176f773e0 user: wenzelm date: Wed Nov 25 13:12:31 2020 +0100 summary: removed pointless case: messages should always carry proper position; The latter belongs to minor rearrangements to support PIDE markup in batch-builds: that is a big thing, with many future applications. Thus the former "core_range" of a command is no longer well-defined in Isabelle/Scala, and Isabelle/ML needs to provide a proper position on its own account. So in the current state of affairs (Isabelle/3df45de0c079), the observed behaviour of Isabelle2021-RC1 is officially correct and intended: something else requires more force to be applied. Also note that in 2012 there was still a tendency to have a lot of color spilled over the source text. Makarius From kuba at kadziolka.net Fri Jan 08 22:34:26 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:52758) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1ky0Kw-0003wJ-A3 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 22:34:26 +0000 X-Cam-SpamDetails: score 0.0 from SpamAssassin-3.4.4-1885236 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.1 PLING_QUERY Subject has exclamation mark and question mark X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from pat.zlotemysli.pl ([37.59.186.212]:56322) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtp id 1ky0Kv-000MZo-SQ (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 22:34:26 +0000 Received: (qmail 16840 invoked by uid 1009); 8 Jan 2021 23:34:25 +0100 Received: from 188.123.215.55 (kuba at kadziolka.net@188.123.215.55) by pat.zlotemysli.pl (envelope-from , uid 1002) with qmail-scanner-2.08st (clamdscan: 0.98.6/26042. spamassassin: 3.4.0. perlscan: 2.08st. Clear:RC:1(188.123.215.55):. Processed in 0.013987 secs); 08 Jan 2021 22:34:25 -0000 Received: from unknown (HELO localhost) (kuba at kadziolka.net@188.123.215.55) by pat.zlotemysli.pl with SMTP; 8 Jan 2021 23:34:25 +0100 Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 From: =?utf-8?q?Jakub_K=C4=85dzio=C5=82ka?= To: Date: Fri, 08 Jan 2021 23:24:02 +0100 Message-Id: Subject: [isabelle] Variable both free and bound?! X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 22:34:26 -0000 Hello, consider the following theory: theory Scratch imports Main begin fun inc :: "nat =E2=87=92 nat" where "inc x =3D Suc x" definition inc' :: "nat =E2=87=92 nat" where "inc' x =3D Suc x" end When you hover over either of the x's in fun inc (with Ctrl held), the following tooltip appears: free variable bound variable :: nat Similarily, the tooltip for the x's in definition inc' is: free variable :: nat bound variable (these observations are equally valid for both Isabelle2020 and Isabelle2021-RC1) I find this quite curious, as 'free' and 'bound' seem to be polar opposites... Kind regards, Jakub K=C4=85dzio=C5=82ka From P.Achten at cs.ru.nl Fri Jan 08 08:09:47 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:43506) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxmqB-0003eK-E5 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 08:09:47 +0000 X-Cam-SpamDetails: score -2.4 from SpamAssassin-3.4.4-1885236 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [131.174.30.193 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta0.cl.cam.ac.uk ([128.232.25.20]:58911) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxmqA-000nDa-er (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 08:09:47 +0000 Received: from ppsw-30.csi.cam.ac.uk ([2001:630:212:8::e:f30]) by mta0.cl.cam.ac.uk with esmtp (Exim 4.93) (envelope-from ) id 1kxmqA-00CZNJ-CW for isabelle-users at cl.cam.ac.uk; Fri, 08 Jan 2021 08:09:46 +0000 X-Cam-SpamDetails: score -2.4 from SpamAssassin-3.4.4-1885236 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [131.174.30.193 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from smtp3.science.ru.nl ([131.174.30.193]:54984) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1kxmq9-000nD9-el (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Fri, 08 Jan 2021 08:09:46 +0000 Received: from [192.168.2.10] (84-84-201-162.fixed.kpn.net [84.84.201.162]) (authen=peter88) by smtp3.science.ru.nl (8.15.2/5.32) with ESMTPSA id 10889hSG028439 for ; Fri, 8 Jan 2021 09:09:44 +0100 To: isabelle-users at cl.cam.ac.uk From: Peter Achten Message-ID: <6a09edee-cc58-14e4-5c82-9a5f417d28da at cs.ru.nl> Date: Fri, 8 Jan 2021 09:09:43 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-GB X-debug-header: local_aliases has suffix X-Mailman-Approved-At: Sat, 09 Jan 2021 12:36:14 +0000 Subject: [isabelle] [TFP'21] final call for papers: Trends in Functional Programming 2021, 17-19 February (online event with Lambda Days 2021 & TFPIE 2021) X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 08:09:47 -0000 -------------------------------------------------------------------------                       Final call for papers         22nd Symposium on Trends in Functional Programming                           tfp2021.org                    *deadline: January 15 2021* ------------------------------------------------------------------------- Did you miss the deadline to submit a paper to Trends in Functional Programming http://tfp2021.org/? No worries -- it's not too late! Submission is open until January 15th 2021, for a presentation slot at the event and post-symposium reviewing. The symposium on Trends in Functional Programming (TFP) is an international forum for researchers with interests in all aspects of functional programming, taking a broad view of current and future trends in the area. It aspires to be a lively environment for presenting the latest research results, and other contributions. * TFP offers a supportive reviewing process designed to help less experienced   authors succeed, with two rounds of review, both before and after the   symposium itself. Authors have an opportunity to address reviewers' concerns   before final decisions on publication in the proceedings. * TFP offers two "best paper" awards, the John McCarthy award for best paper,   and the David Turner award for best student paper. * TFP is co-located with Lambda Days in beautiful Krakow. Lambda Days is a vibrant   developer conference with hundreds of attendees and a lively programme of talks on   functional programming in practice. Due to the covid pandemic, the event is online   with a lot of attention to interaction and getting to socialize with the community. Important Dates --------------- Submission deadline for pre-symposium review:   20th November, 2020  -- passed -- Submission deadline for draft papers:           15th January, 2021 Symposium dates:                                17-19th February, 2021 Visit http://tfp2021.org/ for more information. From fimmler at apple.com Fri Jan 08 15:53:10 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:36400) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kxu4c-0005PP-I1 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 15:53:10 +0000 X-Cam-SpamDetails: score -0.5 from SpamAssassin-3.4.4-1885236 * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [17.151.62.68 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [17.151.62.68 listed in wl.mailspike.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 HTML_MESSAGE BODY: HTML included in message * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.2 DKIMWL_WL_HIGH DKIMwl.org - High trust sender X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from nwk-aaemail-lapp03.apple.com ([17.151.62.68]:34094) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kxu4b-0008KM-KR (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Fri, 08 Jan 2021 15:53:10 +0000 Received: from pps.filterd (nwk-aaemail-lapp03.apple.com [127.0.0.1]) by nwk-aaemail-lapp03.apple.com (8.16.0.42/8.16.0.42) with SMTP id 108FQVfm007780 for ; Fri, 8 Jan 2021 07:53:07 -0800 Received: from crk-mailsvcp-mta-lapp02.euro.apple.com (crk-mailsvcp-mta-lapp02.euro.apple.com [17.66.55.14]) by nwk-aaemail-lapp03.apple.com with ESMTP id 35u9dvajcm-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for ; Fri, 08 Jan 2021 07:53:07 -0800 Received: from crk-mailsvcp-mmp-lapp01.euro.apple.com (crk-mailsvcp-mmp-lapp01.euro.apple.com [17.72.136.15]) by crk-mailsvcp-mta-lapp02.euro.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPS id <0QMM00SQ4HGHTM00 at crk-mailsvcp-mta-lapp02.euro.apple.com> for cl-isabelle-users at lists.cam.ac.uk; Fri, 08 Jan 2021 15:53:05 +0000 (GMT) Received: from process_milters-daemon.crk-mailsvcp-mmp-lapp01.euro.apple.com by crk-mailsvcp-mmp-lapp01.euro.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) id <0QMM01100HA18S00 at crk-mailsvcp-mmp-lapp01.euro.apple.com>; Fri, 08 Jan 2021 15:53:05 +0000 (GMT) X-Va-A: X-Va-T-CD: 075128fdbe8d8f1056d1fbf95af3f498 X-Va-E-CD: e03305570b8956e9a7dcc6f942eac5eb X-Va-R-CD: de4ffac21424f64ec04c28c555d4901e X-Va-CD: 0 X-Va-ID: a5e87260-c89c-46da-bb6f-4b479e98505b X-V-A: X-V-T-CD: 075128fdbe8d8f1056d1fbf95af3f498 X-V-E-CD: e03305570b8956e9a7dcc6f942eac5eb X-V-R-CD: de4ffac21424f64ec04c28c555d4901e X-V-CD: 0 X-V-ID: fbd033c0-516f-42d1-93a2-4eef7bcebd1b X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.343, 18.0.737 definitions=2021-01-08_07:2021-01-07, 2021-01-08 signatures=0 Received: from [17.235.213.38] (unknown [17.235.213.38]) by crk-mailsvcp-mmp-lapp01.euro.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPSA id <0QMM00OBRHGGUH00 at crk-mailsvcp-mmp-lapp01.euro.apple.com>; Fri, 08 Jan 2021 15:53:05 +0000 (GMT) Content-type: multipart/alternative; boundary="Apple-Mail=_442FDBA7-3CAF-405D-973C-BA88CF613F42" MIME-version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\)) Message-id: <6EB765F2-9FC8-4DF5-B2D3-518F2ECB6429 at apple.com> Date: Fri, 08 Jan 2021 16:53:04 +0100 To: cl-isabelle-users at lists.cam.ac.uk X-Mailer: Apple Mail (2.3654.40.0.2.32) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.343, 18.0.737 definitions=2021-01-08_07:2021-01-07, 2021-01-08 signatures=0 X-Mailman-Approved-At: Sat, 09 Jan 2021 12:36:14 +0000 Cc: Sebastian Skalberg Subject: Re: [isabelle] Isabelle2021-RC1 - editing below sometimes causes rechecking above? X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list From: Fabian Immler via Cl-isabelle-users Reply-To: Fabian Immler List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jan 2021 15:53:10 -0000 --Apple-Mail=_442FDBA7-3CAF-405D-973C-BA88CF613F42 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Hi, I have seen similar unexpected behavior and found a way to reproduce it = somewhat reliably: Consider the following lemma statement and proof. Steps to reproduce superfluous rechecking: 1) Have Isabelle check the whole proof. 2) Scroll down such that the first `apply (simp =E2=80=A6)` is out of = the visible part of the buffer. 3) Edit the last apply command (e.g., remove `eval_nat_numeral`) lemma "fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5 =E2=88=A7 fact 6 =3D (6::nat) * fact 5" apply (intro conjI) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) apply (simp add: eval_nat_numeral) done This rechecking is limited to a single lemma statement, but note that I = have seen unexpected rechecking also across lemma statements. Best wishes, Fabian > On 6. Jan 2021, at 15:34, Eugene W. Stark > wrote: >=20 > Using Isabelle2021-RC1 I am noticing an unexpected behavior that did = not occur in previous versions: > editing at the tail end of a proof under construction sometimes seems = to trigger re-checking of > material before the point at which editing is occurring. At least, I = make some edit and I see > highlighting briefly flash on the text earlier than where I am = editing, as if rechecking has been > triggered on that part. I cannot tell how far back the rechecking = occurs -- in lemmas I have > just been working on it goes at least back to the beginning of the = lemma being proved and perhaps > to previous lemmas. It might be associated with the insertion and = deletion of "try", but I am > not sure at this time. Using "try" as a way of verifying statements = as I am sketching out a > proof is pretty fundamental to how I do things, so I am constantly = taking "try" in and out of > the editing buffer. >=20 > This is something that is is hard to describe how to reproduce, other = than to say try writing > a proof and keep your eyes open for apparent rechecking before the = point of edit. Perhaps this > report is enough to suggest what change might have been made that = would cause this. --Apple-Mail=_442FDBA7-3CAF-405D-973C-BA88CF613F42 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Hi,

I have seen similar unexpected behavior = and found a way to reproduce it somewhat reliably:
Consider the following lemma statement and proof.
Steps to reproduce superfluous rechecking:

1) = Have Isabelle check the whole proof.
2) Scroll down such that = the first `apply (simp =E2=80=A6)` is out of the visible part of the = buffer.
3) Edit the last apply command (e.g., remove = `eval_nat_numeral`)

lemma
 "fact 6 =3D = (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact = 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 = =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5 =E2=88=A7
 fact 6 =3D (6::nat) * fact 5"
   apply (intro conjI)
          &nb= sp;    apply (simp add: eval_nat_numeral)
          &nb= sp;   apply (simp add: eval_nat_numeral)
          &nb= sp;  apply (simp add: eval_nat_numeral)
          &nb= sp; apply (simp add: eval_nat_numeral)
          &nb= sp;apply (simp add: eval_nat_numeral)
          app= ly (simp add: eval_nat_numeral)
         apply = (simp add: eval_nat_numeral)
        apply (simp = add: eval_nat_numeral)
       apply (simp add: = eval_nat_numeral)
      apply= (simp add: eval_nat_numeral)
     apply (simp add: = eval_nat_numeral)
    apply (simp = add: eval_nat_numeral)
   apply (simp add: = eval_nat_numeral)
   done

This= rechecking is limited to a single lemma statement, but note that I have = seen unexpected rechecking also across lemma statements.

Best= wishes,
Fabian

On = 6. Jan 2021, at 15:34, Eugene W. Stark <isabelle-users at starkeffect.com> = wrote:

Using Isabelle2021-RC1 I am noticing = an unexpected behavior that did not occur in previous versions:
editing at the tail end of a proof under construction = sometimes seems to trigger re-checking of
material before = the point at which editing is occurring.  At least, I make some = edit and I see
highlighting briefly flash on the text = earlier than where I am editing, as if rechecking has been
triggered on that part.  I cannot tell how far back the = rechecking occurs -- in lemmas I have
just been working on = it goes at least back to the beginning of the lemma being proved and = perhaps
to previous lemmas.  It might be associated = with the insertion and deletion of "try", but I am
not = sure at this time.  Using "try" as a way of verifying statements as = I am sketching out a
proof is pretty fundamental to how I = do things, so I am constantly taking "try" in and out of
the= editing buffer.

This is something that is = is hard to describe how to reproduce, other than to say try writing
a proof and keep your eyes open for apparent rechecking = before the point of edit.  Perhaps this
report is = enough to suggest what change might have been made that would cause = this.
= --Apple-Mail=_442FDBA7-3CAF-405D-973C-BA88CF613F42-- From isabelle-users at starkeffect.com Sat Jan 09 15:21:35 2021 Received: from ppsw-31.csi.cam.ac.uk ([131.111.8.131]:59480) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kyG3b-0002hl-Ul (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 15:21:35 +0000 X-Cam-SpamDetails: score -0.1 from SpamAssassin-3.4.4-1885261 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from cloud2.starkeffect.com ([45.55.83.152]:58538) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtp id 1kyG3a-0005MQ-Jz (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 15:21:35 +0000 Received: from home.starkeffect.com (ool-18b963f6.dyn.optonline.net [24.185.99.246]) by cloud2.starkeffect.com (Postfix) with ESMTPSA id D54413F4F2; Sat, 9 Jan 2021 15:21:31 +0000 (UTC) To: "cl-isabelle-users at lists.cam.ac.uk" From: "Eugene W. Stark" Message-ID: Date: Sat, 9 Jan 2021 10:21:31 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: [isabelle] Isabelle2021-RC1 - sledgehammer suggestion "by presburger" sometimes fails X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list Reply-To: stark at cs.stonybrook.edu List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jan 2021 15:21:36 -0000 This is not necessarily new behavior to Isabelle2021-RC1, but I just observed a reason that explains why it occurs, and might lead someone to be able to fix it. Not infrequently, sledgehammer will report "Try this: using X Y Z ... by presburger", but when you actually insert this, the proof fails. In the past, I have observed that the result can often be salvaged by using "metis" in place of "presburger" (though for the cases where this arises, which do not actually involve Presburger arithmetic, presburger can often be much, much faster than other methods). Today I just noticed that whether or not presburger succeeds can sometimes be sensitive to the ordering of the assumptions in the "using" clause that precedes "by presburger". I confirmed that, in at least one instance where the "using X Y Z ... by presburger" did not succeed, that it did succeed when the assumptions were permuted. More specifically, I applied sledgehammer to something of the form: using A B C ... I received the suggestion "using X Y Z ... by presburger", but "using A B C ... X Y Z ... by presburger" did not succeed. However after permuting "A B C ... X Y Z ..." appropriately, presburger did succeed. I don't know if proof methods are permitted to be sensitive to the order of assumptions in the context. I would think that this would not be desirable. In any case, it seems that one class of failures of "by presburger" suggestions returned by sledgehammer are due to presburger having such a sensitivity. From david.k at posteo.de Sat Jan 09 19:31:56 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:57492) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kyJxs-0001O7-QR (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 19:31:56 +0000 X-Cam-SpamDetails: score -2.6 from SpamAssassin-3.4.4-1885261 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [185.67.36.65 listed in list.dnswl.dnsbl.ja.net] * 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) * [185.67.36.65 listed in wl.mailspike.net] * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mout01.posteo.de ([185.67.36.65]:45189) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kyJxs-000fLQ-d7 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 19:31:56 +0000 Received: from submission (posteo.de [89.146.220.130]) by mout01.posteo.de (Postfix) with ESMTPS id 1FF65160063 for ; Sat, 9 Jan 2021 20:31:55 +0100 (CET) Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4DCqpy5N07z9rxX for ; Sat, 9 Jan 2021 20:31:54 +0100 (CET) To: cl-isabelle-users at lists.cam.ac.uk From: David Kretzmer Message-ID: <97ae9d0d-79e2-e0bc-f118-c88e1a140dc4 at posteo.de> Date: Sat, 9 Jan 2021 20:31:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: [isabelle] Detecting undefined X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jan 2021 19:31:56 -0000 Hello, I am developing an executable operational semantics for a programming language in Isabelle/HOL. One area that makes me a bit uneasy is the existence of `undefined`. Since the occurrence of `undefined` may indicate a bug in the semantics (e.g., an off-by-one error when indexing into a list) and also raises an exception during execution, I would like to prove that any final execution state obtained by the transition relation is independent of `undefined`. However, as `undefined` is a undetermined yet legal value there does not seem a way to express this property. The only alternative I see is to prove the much stronger property that any final execution state is part of a set of known, valid states. However, I would like to start with the simpler property (i.e., no `undefined`). Is this possible? Best regards, David From isabelle-users at florianmaerkl.de Sat Jan 09 18:12:28 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:40176) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kyIix-0007Jy-W8 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 18:12:28 +0000 X-Cam-SpamDetails: score -0.3 from SpamAssassin-3.4.4-1885261 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no * trust * [85.215.255.24 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) * [85.215.255.24 listed in wl.mailspike.net] * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature * -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from * envelope-from domain * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mo4-p00-ob.smtp.rzone.de ([85.215.255.24]:10614) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kyIix-00023i-cm (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sat, 09 Jan 2021 18:12:27 +0000 X-RZG-AUTH: ":JWICemCud/DxHoRx2yg49oX0O/FjOgMCY83ji5SkMM6Tf/x8LI/wkWHHWmeAjaMTF/tut4Ypwww=" X-RZG-CLASS-ID: mo00 Received: from [192.168.1.22] by smtp.strato.de (RZmta 47.12.1 DYNA|AUTH) with ESMTPSA id L09737x09ICQm0p (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate) for ; Sat, 9 Jan 2021 19:12:26 +0100 (CET) To: cl-isabelle-users at lists.cam.ac.uk From: =?UTF-8?Q?Florian_M=c3=a4rkl?= Message-ID: Date: Sat, 9 Jan 2021 19:12:26 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US-large Content-Transfer-Encoding: 8bit X-Mailman-Approved-At: Sun, 10 Jan 2021 10:37:41 +0000 Subject: [isabelle] Strange "Tactic failed" error in lift_definition with (code_dt) seemingly depending on syntactic details X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jan 2021 18:12:28 -0000 Hello, I just encountered some strange behavior when using the (code_dt) flag of lift_definition as in this example: typedef imc = "{mc :: nat. True ∧ True}" by simp setup_lifting type_definition_imc lift_definition (code_dt) lift_imco :: "nat ⇒ imc option" is Some by simp This throws the following error at the "by simp" of the lift_definition (even sorry does the same): Tactic failed The error(s) above occurred for the goal statement⌂: rel_fun (eq_onp (pred_option (λmc. True ∧ True))) (eq_onp (λmc. True ∧ True)) (case_option (Rep_imc undefined) (λx2. x2)) (case_option (Rep_imc undefined) (λx2. x2)) I'm not really sure what it is trying to tell me, the only suspicious thing I can spot are the two "undefined"s in the goal. What's funny is that if I make the predicate for the imc type just "True" instead of "True ∧ True", it works. Is that a bug or maybe just a limitation of how the lifting works there? For a bit of context, I am using something similar to this in a project where I have to construct an abstract type with invariants directly from its base representation. I do this by checking the invariants on the base type and returning an option type of the abstract type that will be None whenever the invariants are not fulfilled. I also need (code_dt) to generate code from it. There, my typedef initially looked something like this: typedef imc = "{mc :: nat. invar_a mc ∧ invar_b mc ∧ ...} I just fixed it there by wrapping the conjunction in a single definition so it's not a blocker for me but I would still be interested whether there is a solution or if it's a bug. -- Florian Märkl https://metallic.software From holub at karlin.mff.cuni.cz Sun Jan 10 11:16:33 2021 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]:49526) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kyYi1-0001ep-So (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 10 Jan 2021 11:16:33 +0000 X-Cam-SpamDetails: score -2.5 from SpamAssassin-3.4.4-1885290 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [195.113.30.11 listed in list.dnswl.dnsbl.ja.net] * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from * author's domain * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from postak.karlin.mff.cuni.cz ([195.113.30.11]:57380) by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kyYi1-000DHW-Q6 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 10 Jan 2021 11:16:33 +0000 Received: from [192.168.0.233] (ip-89-176-149-231.net.upcbroadband.cz [89.176.149.231]) by postak.karlin.mff.cuni.cz (Postfix) with ESMTPSA id 4EEC41FE8F for ; Sun, 10 Jan 2021 12:16:31 +0100 (CET) To: cl-isabelle-users at lists.cam.ac.uk From: Stepan Holub Message-ID: <2deffb67-9d8f-0b6a-dc21-21dc0c5803bd at karlin.mff.cuni.cz> Date: Sun, 10 Jan 2021 12:16:30 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Antivirus: AVG (VPS 210109-6, 09.01.2021), Outbound message X-Antivirus-Status: Clean Subject: [isabelle] brute force search in lists X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Jan 2021 11:16:34 -0000 Hello, we need to check simple (humanly trivial) properties of factors (contiguous sublists) of limited length in a language generated by a given set of lists. Something like this: lemma   assumes "w ∈ lists {[0,1],[1,0,1]}" and "length w = 4"   shows   ""fs ≤f concat w ⟹ P fs" where ≤f denotes the factor relation and P is some predicate that is easy to check (a toy example would be "length fs < 13"). We developed a relatively simple mechanism which is able to prove such claims uniformly by a brute force search. It is based on a bunch of elimination rules that create a long list of goals  for all possible factors (it is 904 in the above example). Goals are ultimately discharged by a single simp_all. My question is whether our approach is reasonable, whether there is some obvious way how to do this (it reminds of Nitpick), and whether there are some existing examples of similar tasks. Thanks. Stepan Holub -- Tento e-mail byl zkontrolován na viry programem AVG. http://www.avg.cz From Rene.Thiemann at uibk.ac.at Sun Jan 10 13:29:29 2021 Received: from ppsw-30.csi.cam.ac.uk ([131.111.8.130]:52232) by lists-1.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25) with esmtp id 1kyamf-000551-6b (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 10 Jan 2021 13:29:29 +0000 X-Cam-SpamDetails: score -1.3 from SpamAssassin-3.4.4-1885290 * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [138.232.1.142 listed in list.dnswl.dnsbl.ja.net] * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [138.232.1.142 listed in wl.mailspike.net] * 1.1 HTML_IMAGE_ONLY_16 BODY: HTML: images with 1200-1600 bytes of words * 0.0 HTML_IMAGE_RATIO_02 BODY: HTML has a low ratio of text to image * area * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from mta0.cl.cam.ac.uk ([128.232.25.20]:56963) by ppsw-30.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kyamd-000koI-e3 (Exim 4.92.3) for cl-isabelle-users at lists.cam.ac.uk (return-path ); Sun, 10 Jan 2021 13:29:29 +0000 Received: from ppsw-31.csi.cam.ac.uk ([2001:630:212:8::e:f31]) by mta0.cl.cam.ac.uk with esmtp (Exim 4.93) (envelope-from ) id 1kyamc-00D59u-UA for isabelle-users at cl.cam.ac.uk; Sun, 10 Jan 2021 13:29:26 +0000 X-Cam-SpamDetails: score -1.3 from SpamAssassin-3.4.4-1885290 * -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, * medium trust * [138.232.1.142 listed in list.dnswl.dnsbl.ja.net] * -0.1 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) * [138.232.1.142 listed in wl.mailspike.net] * 0.0 HTML_IMAGE_RATIO_02 BODY: HTML has a low ratio of text to image * area * 1.1 HTML_IMAGE_ONLY_16 BODY: HTML: images with 1200-1600 bytes of words * 0.0 HTML_MESSAGE BODY: HTML included in message * -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Cam-ScannerInfo: http://help.uis.cam.ac.uk/email-scanner-virus Received: from lmr1.uibk.ac.at ([138.232.1.142]:40074 helo=smtp.uibk.ac.at) by ppsw-31.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25) with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1kyamV-000xzK-MA (Exim 4.92.3) for isabelle-users at cl.cam.ac.uk (return-path ); Sun, 10 Jan 2021 13:29:26 +0000 Received: from exchange.uibk.ac.at (xmbx12.uibk.ac.at [138.232.2.175]) by smtp.uibk.ac.at (8.14.4/8.14.4/F1) with ESMTP id 10ADSrvp030910 (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Sun, 10 Jan 2021 14:28:53 +0100 Received: from xmbx11.uibk.ac.at (138.232.2.173) by xmbx12.uibk.ac.at (138.232.2.175) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2044.4; Sun, 10 Jan 2021 14:28:52 +0100 Received: from xmbx11.uibk.ac.at ([fe80::a59a:6f10:b35:eede]) by xmbx11.uibk.ac.at ([fe80::a59a:6f10:b35:eede%3]) with mapi id 15.01.2044.012; Sun, 10 Jan 2021 14:28:52 +0100 From: =?utf-8?B?VGhpZW1hbm4sIFJlbsOp?= To: isabelle-users Thread-Topic: Isabelle 2021-RC1: Problem with fonts in jEdit Thread-Index: AQHW51SJpccgFt9F4UWs5OVveV7wvg== Date: Sun, 10 Jan 2021 13:28:52 +0000 Message-ID: <077C1857-E518-461D-A377-9C432FBAE031 at uibk.ac.at> Accept-Language: de-DE, de-AT, en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [138.232.2.105] Content-Type: multipart/related; boundary="_005_077C1857E518461DA3779C432FBAE031uibkacat_"; type="multipart/alternative" MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 at uibk.ac.at X-debug-header: local_aliases has suffix Subject: [isabelle] Isabelle 2021-RC1: Problem with fonts in jEdit X-BeenThere: cl-isabelle-users at lists.cam.ac.uk X-Mailman-Version: 2.1.8 Precedence: list List-Id: Isabelle Users List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Jan 2021 13:29:29 -0000 --_005_077C1857E518461DA3779C432FBAE031uibkacat_ Content-Type: multipart/alternative; boundary="_000_077C1857E518461DA3779C432FBAE031uibkacat_" --_000_077C1857E518461DA3779C432FBAE031uibkacat_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RGVhciBhbGwsDQoNCmZvciBtZSBpdCBsb29rcyBsaWtlIHRoZXJlIGlzIGEgZm9udCBwcm9ibGVt IGluIElzYWJlbGxlIDIwMjEtUkMxOg0KaW4gdGhlIGpFZGl0LXNob3J0Y3V0cy1lZGl0b3IgdGhl IGljb25zIGZvciDigJxjb250cm9s4oCdIGFuZCDigJxjb21tYW5k4oCdDQphcmUgbm90IGRpc3Bs YXllZCBjb3JyZWN0bHkuDQoNCkF0dGFjaGVkIHR3byBzbWFsbCBzY3JlZW5zaG90cyB0byBpbGx1 c3RyYXRlIHRoZSBwcm9ibGVtLg0KKElzYWJlbGxlMjAxOSBhbmQgSXNhYmVsbGUyMDIxLVJDMSkN Cg0KQmVzdCwNClJlbsOpDQoNClBTOiBCb3RoIElzYWJlbGxlIHN5c3RlbXMgKDIwMTkgYW5kIDIw MjEtUkMxKSBoYXZlIGJlZW4gaW5zdGFsbGVkIGZyb20gc2NyYXRjaCB3aXRob3V0IGFueSBhZGp1 c3RtZW50cyBpbiB0aGUgZGlyZWN0b3JpZXMgfi8uaXNhYmVsbGUvSXNhYmVsbGUyMHh4DQpCb3Ro IHNjcmVlbnNob3RzIHdlcmUgdGFrZW4gdW5kZXIgbWFjT1MgQ2F0YWxpbmEgKDEwLjE1LjcpLCBh bmQgdGhlIHByb2JsZW1zIGlzIGFsc28gdmlzaWJsZSBpbiBCaWcgU3VyLg0KDQpbY2lkOkZDRUUz N0U3LTRDQzctNDEzRC04MDNDLTM5Q0Q0MUE3MUYyNUBob21lXVtjaWQ6RTJFMzY5RjQtMzQwNS00 QTVELUJCNTgtRkRBNUIwQUIwMEY5QGhvbWVdDQo= --_000_077C1857E518461DA3779C432FBAE031uibkacat_ Content-Type: text/html; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgbGluZS1icmVhazogYWZ0 ZXItd2hpdGUtc3BhY2U7Ij4NCjxkaXYgc3R5bGU9IndvcmQtd3JhcDogYnJlYWstd29yZDsgLXdl YmtpdC1uYnNwLW1vZGU6IHNwYWNlOyBsaW5lLWJyZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNs YXNzPSIiPg0KRGVhciBhbGwsDQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0K PGRpdiBjbGFzcz0iIj5mb3IgbWUgaXQgbG9va3MgbGlrZSB0aGVyZSBpcyBhIGZvbnQgcHJvYmxl bSBpbiBJc2FiZWxsZSAyMDIxLVJDMTombmJzcDs8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+aW4gdGhl IGpFZGl0LXNob3J0Y3V0cy1lZGl0b3IgdGhlIGljb25zIGZvciDigJxjb250cm9s4oCdIGFuZCDi gJxjb21tYW5k4oCdJm5ic3A7PC9kaXY+DQo8ZGl2IGNsYXNzPSIiPmFyZSBub3QgZGlzcGxheWVk IGNvcnJlY3RseS48L2Rpdj4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8 ZGl2IGNsYXNzPSIiPkF0dGFjaGVkIHR3byBzbWFsbCBzY3JlZW5zaG90cyB0byBpbGx1c3RyYXRl IHRoZSBwcm9ibGVtLjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj4oSXNhYmVsbGUyMDE5IGFuZCBJc2Fi ZWxsZTIwMjEtUkMxKTwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4N CjxkaXYgY2xhc3M9IiI+QmVzdCw8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+UmVuw6k8L2Rpdj4NCjxk aXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPlBTOiBCb3Ro IElzYWJlbGxlIHN5c3RlbXMgKDIwMTkgYW5kIDIwMjEtUkMxKSBoYXZlIGJlZW4gaW5zdGFsbGVk IGZyb20gc2NyYXRjaCB3aXRob3V0IGFueSBhZGp1c3RtZW50cyBpbiB0aGUgZGlyZWN0b3JpZXMg fi8uaXNhYmVsbGUvSXNhYmVsbGUyMHh4PC9kaXY+DQo8ZGl2IGNsYXNzPSIiPkJvdGggc2NyZWVu c2hvdHMgd2VyZSB0YWtlbiB1bmRlciBtYWNPUyBDYXRhbGluYSAoMTAuMTUuNyksIGFuZCB0aGUg cHJvYmxlbXMgaXMgYWxzbyB2aXNpYmxlIGluIEJpZyBTdXIuPC9kaXY+DQo8ZGl2IGNsYXNzPSIi PjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48aW1nIGFwcGxlLWlubGluZT0i eWVzIiBpZD0iNjQzNTczNEQtODE3MS00OEQyLTk2NjItQThBRkFDREM4RDdCIiBjbGFzcz0iIiB3 aWR0aD0iNzAxIiBoZWlnaHQ9IjUzOCIgc3JjPSJjaWQ6RkNFRTM3RTctNENDNy00MTNELTgwM0Mt MzlDRDQxQTcxRjI1QGhvbWUiPjxpbWcgYXBwbGUtaW5saW5lPSJ5ZXMiIGlkPSJGMjFCQzQwNy1E MTBGLTRFOEItOUM0Qy00RUVGNUZGQjg1OUUiIGNsYXNzPSIiIHdpZHRoPSI3NTAiIGhlaWdodD0i NTUxIiBzcmM9ImNpZDpFMkUzNjlGNC0zNDA1LTRBNUQtQkI1OC1GREE1QjBBQjAwRjlAaG9tZSI+ PC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg== --_000_077C1857E518461DA3779C432FBAE031uibkacat_-- --_005_077C1857E518461DA3779C432FBAE031uibkacat_ Content-Type: image/png; name="Isabelle 2019 shortcuts.png" Content-Description: Isabelle 2019 shortcuts.png Content-Disposition: inline; filename="Isabelle 2019 shortcuts.png"; size=237395; creation-date="Sun, 10 Jan 2021 13:28:52 GMT"; modification-date="Sun, 10 Jan 2021 13:28:52 GMT" Content-ID: Content-Transfer-Encoding: base64 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 SKI4fwC7uCjHv0ya4eI8kYuEKEvMJ7n8nQEAuHYAvknk8rFtcvm33Uix9wDozJvQ9ArDIlq+yeiJ 4Dz9ZuET8Heb0Pt/6vHvM1BU4Ar+Pv8TVEgbvqyk1pcAAACKZVhJZk1NACoAAAAIAAQBGgAFAAAA AQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAAAAEAAACQ AAAAAQADkoYABwAAABIAAAB4oAIABAAAAAEAAAV6oAMABAAAAAEAAAQ0AAAAAEFTQ0lJAAAAU2Ny ZWVuc2hvdKAdsswAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAHYaVRYdFhNTDpjb20uYWRvYmUueG1w AAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29y ZSA1LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8w Mi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIi CiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4K ICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjE0MDI8L2V4aWY6UGl4ZWxYRGltZW5zaW9u PgogICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVzZXJDb21tZW50 PgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MTA3NjwvZXhpZjpQaXhlbFlEaW1lbnNp b24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpE O0JvAAAAHGlET1QAAAACAAAAAAAAAhoAAAAoAAACGgAAAhoAAbIF5nz+ygAAQABJREFUeAHsXQeA XUXVPpveQyoJJBCkK4gUAUFAmnRQRFRQkSJIR+xYEFFAEREB+REV/X+xU0TpAtIFpGjonRCSkN77 7v7zzd3v7dmT+96+VLLmG9j3zWkzc78779688+bNbZg0aVJzKsbS0NBgXvZ61GHzPr4Oe5ShQ4Ee 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 7h+6f1S7RnS0+8fitFioU/p8iT+WascG/QMPPJAXyYwaNcrWX79YVIS45fn8ggVDL7/8cm5jl112 ycPge8y3vaKvv7FfHkOt4+d4qvngsy7+uqRFWX68iPNytXj6rcjjR1933323TZo0yfbYY4+V/vm7 2rG9Xcfvz2t7529l8K/+ly7/pfnTdqGm5s9qOn+Q6MUFY1nKvLSKt8sdN1nfAWuZde9hDUhOoqHm pvTSkHOTkCtJ3oZOFZ0tmG+z0jYKi/c+wHru/yFErfAyfvz4vEIX2zFgawZevNGRr0PmBEUdBVs7 YJsHrADG6t6VUW4dc63dOuUG6z2gv3Xr2T2Tl+5zOZlbGU8LgdB36pSYLOaRLZw/32ZPm2H7DT7U 9h156MoYntoUA2JADIgBMSAGxIAYEANiQAysMgaQhHz88cftoYcesrTFYN5yD7/EHDFihI0cOdI2 2GAD22677Zb47MYBnnHGGfmXmvvuu68ddNBBVC8X3nFHWphzww25jZ/85CeVhUPL1Wgdwbfffrv9 5S9/ycd6ySWXLFO/+GXok08+aQ8++KC99dZbmU90jS0LsaBphx12sG233Tb/2rWOIa0UlyeeeMJ+ /vOf57Y333xzO+WUU1ZKP2pUDIgBMbCmMNAwduxYpBLrLkhAIkm64IF7rPO111jftM2BdelaxLck eFuE0GaRocxJ35yvTO00LrJZk6dY40eOsO47fyD4l4vsn1juZfkbwSlTpuSVvN26daskdjF2/Pl4 1FlYB2I7B7SBrRyGDBmSXRhHZFy9yLgHJ9xlf5zwK+s/eGDepgHU5eRzS2I3Ccg+Q9mCqQfw1jLU hpT0bUzfcM+YNNUOH/YZ22nYHnUNgf0T6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNd VcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowj OlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpy TowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR 6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNd VcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYR6wpyTowjOlNdVcYRqwUhEXnllVfmhCR8q5XNNtvM jj76aOvdO20XGMrnP//5/ByW/fbbzw488MBsZb/EENKuiEQvEq4oSPT61cXtBicH9kusJwY+vl8k ev0q3HraSFs0Zj7xebZWwcKmE044If+atcyP4yaW+dTSzZ492+68887Mw4477pgTzN4fiWif6D35 5JO9eZn5YyMcN5H6epFxxHrj6Mc4IvX1IuOI9cbRj3FE6utFxhHrjaMf44jU14uMI9YbRz/GEamv FxlHrDeOfowjUl8vMo5Ybxz9GEekvl5kHLHeOPoxjkh9vcg4Yr1x9GMckfp6kXHEeuPoxzgi9fUi 44h1x73xxht56wYfwEQodVFuHD/WZnz/27buoIFm3bqn/GPLz6NSQLE9Q0tukjnKlmQlbtcpxVo0 m27eqDUtmGfjp6WVs18+2zoNH5Ftsb8ow4k6Yg5secFeu88++2xeiYuVvPhmmAX+vsR4EIgCxN/8 tHIWP5t55zvfmffsZSzjiNQDoy7K4+e+YRc+8Q3rNaKfde0O/ooYLIfG6JqbikR0IbX+9AxDg70Y Yhpf+gXTgnnzbf6bs+2LW59rw3uNTNbkk46Rx1Eme1309TbUUWr51LIV0YqvxVEtm/grGKjFUS2b +BN/YKDWHKll0/zR/NH80fun1jWilk3XD10/dP1Y+uvHmDFj7LLLLjM8WwWle/qM9N73vtfWXnvt /EtLfB574YUXbM6cOfnePmDAADvxxBNt3XXXzf58T2JFL7Z72GeffZZY0UsfYg5seYk6L/uEKxK9 /JxYbzz92CaRemDUQf773/9eSTAj0YsEM/qOvmXxr7zyil1++eWZO9jB5zbbbGPDhg3L8dje8LHH HsvPqIEdq6aR7EUSHaVWH7VsOTjE49ydf/752YQ+tthiizafVbHq+J577skLrHbbbbc2WzewPSD7 JZbZqKvlU8um+IKBWhzVsok/8QcGas2RWjbNnxU4f5DoJaH14pyfX2ZrvfqidU1bIhSZSTaRsKXa kPZxYE61uCG1tJ7zqEiiwjW9pP8XpoekzXjHJtb7uBXzMw3c2PCgNWzZgImEPxTWfRK0ZVQVu79x s44tHHADesc73uHdl7l+9XOX2HMNT1uftGUDhobEbssAEqSbd05MgygYoSp4gk+R5E2Yt3Eokr2z pky3zW0LO3qz0+GiIgbEgBgQA2JADIgBMSAGxIAY6BAMIDF7wQUX5JW8+Ly26aab2mc/+9m89Z4/ gFmzZtlvfvMbe+aZZ/LnOvzMP67+xIpe/CoTWzdwRa9vY1nqTPTisyETrsvSztLGsF/ELc3WDTh+ JFYnTpyYu9xoo43s+OOPt169erUZArYqvPrqq+3pp5/OfOKz89e//vU2i5vaBCyjwEQv+MM4ttxy y2VsSWFiQAyIATFQDwMN6dvTnGXEhRc3ViKDo9z45hs26/xv2rrpQWVISrZkIpGezElLJCJzYrUl d+lciixlTlyi9ZbYIsDeTN/i9v3audZlxHpFPFxSif0X2iVf6YcVuLhZISnLn9UwwRujeLxRT9nH YwP+d73rXUv8g4O+7J8Y9ZTHzR1j33/iazZ4o+Hp4DpVkryZjZz1BX/pD8lfKPGC85ISu6AKYu4j N9icjxGrqCe/OM6+svX5tm7v9ZeLv/bGn7steWEckS5Rpj4i/Yi0R5n6iPQj0h5l6iPSj0h7lKmP SD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KPSHuUqY9IPyLtUaY+Iv2ItEeZ+oj0I9IeZeoj0o9Ie5Sp j0g/Iu1Rpj4i/Yi0R5n6iPQj0h5l6iPSj0h7lKmPSD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KPSHuU qY9IPyLtUaY+Iv2ItEeZ+oj0I9IeZeoj0o9Ie5Spj0g/Iu1Rpj4i/Yi0R5n6iPQj0h5l6iPSj0h7 lKmPSD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KPSHuUqY9IPyLtUaY+Iv2ItEeZ+oj0I9IeZeoj0o9I e5Spj0g/Iu1Rpj4i/Yi0R5n6iPQj0h5l6iPSj0h7lKmPSD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KP SHuUqY9IPyLtUaY+Iv2ItEeZ+oj0I9IeZeoj0o9Ie5Spj0g/Iu1Rpj4i/fzKVWyZ9+Uvf3mJpKSP vfjiiw0LexB/1lln2fDhwyuff84888y8oveDH/xgzUTvwoUL88O3kRRFghMP7WbhuChjfDfeeGPu 48c//nFlr1x87kQyFauLa8WzHSA+f+LB3zNmzKjExf4oe17KEsz0I7KfW2+91W666aYs4oHkX/rS l6xPnz40VxBx+CXsRRddlPdDhmH33Xe3j3zkIxU+K86hAv6wJQS2k8A54+dmuMXxYAsJJPJx7D7R Sz8iu4gy9UAkp6elRWL+vEX/KPt41HHO8Itf7FHsV0nTryweXzKgX2xzgf2N4UM/Yq142jwyjkhb lKmPSD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KPSHuUqY9IPyLtUaY+Iv2ItEeZ+oj0I9IeZeoj0o9I e5Spj0g/Iu1Rpj4i/Yi0R5n6iPQj0h5l6iPSj0h7lKmPSD8i7VGmPiL9iLRHmfqI9CPSHmXqI9KP SHuUqY9IPyLtlHOilwlPIAqMKGX6Bbf8xXr+4zbrNWRocshexY2gpZ4DC3VRRVNFs8UqVIiQkbAs spbWnOrzJk+yubvubd33O6Rm/2iU40IdhTIQm/bjhjV48OCshw4Xch5TEVHEsA6sENJy7NQxDjcy fAvKn7tQDz/fP+Oq6W974zr7+8ybrP/aaW9j7MubErqIBxt5JW+qttBVVAJ/GF72RuIXUXllr6W9 eqfYnn0OsH1GfrhyrO2NC2NEac+vGF/BkffPwYoXf2n+8v2DOcH3RnvzSvOnYKA9nvT+K66IcV5p /mj+gAG9f3T91f2nWKiB90O8Tur+oftH2byADmV1un6ed955+TMctg9AohYPXqs1f1999VX70Y9+ lI/j/e9/vx1++OGV+Y8VvVghzERvfF+8/vrrOQmKbf58wWfHD3zgA7brrrsu8e/amHB9+OGH7b77 7rP0rJvKOPEZEQ9/w2rVsusStqRAOw888EBlewr0jwTxhhtuaB//+MfznsP+vDDBDD+fYIbs/SD7 4/zud7+bk5lIwn7hC1+o8EmfGI/E5w9/+MO8ZSHG873vfQ8uuWCrDKzyRX8nnXRSHu91112Xt9Gg D7aF2GWXXeyAAw7ISXAe/yOPPGK//e1v22yjiBgkV9HeZz7zGdt6661z0hbJfegOPfRQw/YNqKNw zDxvzz33XMUGO5LMSE4jBgVx7P/Pf/6z3X///TZq1Kg89j/84Q/2/PPP50Q7fDGOd7/73Xn+MFHv 45FMxkP4Ro8enR/SjhgUJM0xT/baa6+c6IaO4/TxZXroUNrzgx0ltpuV6UXxree5jCfxp/lTNi/W pPdPQ7poFrOAR90Ozrn0B7b2tMmWsp7pCkPn9EZL1XzByZhekqLQFfWKL5SFJUHaZDaLSTl3jr21 1mDrfdqXC90yvr700kv54ovN+TEe/qG5PL6UKaWOF052VSZDhz/c5PBN3sYbb0z3ZcLLn0n/kOk1 3rr3Bn9pfNw+ONdBaMs/2DN/rfXcWTLnxC7IxLiY7O2c9hKeM9eGzRluJ7/zrGUal4LEgBgQA2JA DIgBMSAGxIAYEAOrkgE8gI2JxU022cROOaW+rfymTp2aE4hIMjJJh3EjsYkEHfboReLRF6wsRcIU K3GrFSRr99577zZmJlzxGRKJyOuvv76NnQIShxg/tkrwBXFXXHFFfoZM/LxJPzz4G9tQYAUuCxPM iMG40X57Zfz48ZX9cPG59dRTT20vJNuvuuqqnNCEgH2OuWUhVh9/4xvfyD7gE9tJYDVvWdlpp51y wpq2hx56KCd6ecz8LE77UUcdZdtuu21u74tf/GJWg98PpIS7LzxvWMzFtrwddWzTgeS+L0jsItE7 cuTIvAoXv/oti0eSHyvDkRhnwYprnDNsO1EWAz88wwdbjGDLSBUxIAbEwOrEQE704qLbXsEFDn6z v/0lG55uqNatW05UJi3ylamkF2DO7kJMAutIWiK+xQ0JyhzDZGaypd9h2Ph00+jz7QvhtURh/zBU q8OGPZvwjaq/UPvj83X4s0CPdvGHApk3U+jwDwasFsYFvVb/bC8iY77z+OfNhneyLt26WlNja4Ic dV+KB7K10Jj5S998FgwW48RK3iTnZC/Gl7hrmNBs39rmYt9Mpc7+oahWrziXVKrFeH1JWEXl/arV K84llWoxXl8SVlF5v2r1inNJpVqM15eEVVTer1q94lxSqRbj9SVhFZX3q1avOJdUqsV4fUlYReX9 qtUrziWVajFeXxJWUXm/avWKc0mlWozXl4RVVN6vWr3iXFKpFuP1JWEVlferVq84l1SqxXh9SVhF 5f2q1SvOJZVqMV5fElZReb9q9YpzSaVajNeXhFVU3q9aveJcUqkW4/UlYRWV96tWrziXVKrFeH1J WEXl/arVK84llWoxXl8SVlF5v2r1inNJpVqM15eEVVTer1q94lxSqRbj9SVhFZX3q1avOJdUqsV4 fUlYReX9qtUrziWVajFeXxJWUXm/avWKc0mlWozXl4RVVN6vWr3iXFKpFuP1JWEVlferVq84l1Sq xXh9SVhF5f2q1SvOJZVqMV5fElZReb9q9YpzSaVajNeXhFVU3q9aveJcUqkW4/UlYRWV96tWrziX VKrFeH1JWEXl/arVn3zyybxPLD57YWXmhz/84aWKrzi3VHyiF8k/fvbDM1ewChiIxBxWgOLBY0gS v/jii3bvvfcaHlCGcR5xxBG2ww47VD4zIeH617/+NfeA9vDzfazoxF7CSBo/9dRTOR6/IsVqTyQt kbDlMd9yyy2G7RRQsBUgYvGQOaxSfeKJJwwcoF0kOJHoZLnzzjvzlhGQkehFeyhsNwvhBe1h3134 gM8PfehD2cPH+DrDMb6bb745x33sYx8zJG3h5xO98MU4YcNKWPCAB+RhdTO4Q8HqaqyyRkFCGPFI Pv/85z/PusMOO8ywtzIKtkDolnIK8CtL9KJ/JPSxVQcSr5Bx3vB5HDyjbyRy0TfGdeSRR+bzlhtP L3/84x/zCmrKWD2M84pcAT7XY7UuEOWQQw6xPfbYg675fOG8oey5556Zy549expWk0OPbR3R5zHH HGPvec97KnG+4nmuVvf+sV4txutjjJe9X7W694/1ajFeH2O87P2q1b1/rFeL8foY42XvV63u/WO9 WozXxxgve79qde8f69VivD7GeNn7Vat7/1ivFuP1McbL3q9a3fvHerUYr48xXvZ+1ereP9arxXh9 jPGy96tW9/6xXi3G62OMlxvSxaqZzh7phAsY9dDN+lJ6umnatqEhfeMFW0424hV+GdNLLi2JS0C+ JxU3pqLecoNq8WzAXrXpJzZvpu0b+v7gp7m/FlPRbrqoF3213tj8mFgH4ka5wQYbVH4Swrg8vpZ2 Yp0JXfaJdlhQxx8exoab8VZbbdXumHy87wttfvWR46zPqAHpHxgFf8WD2NLxNWJpb8txZiLhXSTR fXvkr1Pn9I1uyzA7paRvY+Nim/3aNLtg+58vF38cL3pHoQxEwVja0/nxtudb1qbiW+ef+Gt7/dH8 0/uvvfeErh+6fuSbVXppb67o/rPkPV3vH71/9P4pGND1Y9X9+wtJQvzEHuWTn/ykbb/99st1/faJ 3v333z+3i2vb73//e8MKU5zbgw8+OP/s3p9nbF+ARDASt0g+/uAHP8ixeGHCFe0gSXzaaafZqFGj 2ozztttuywlA+COZiGQx2ke59tprbdKkSXlrBmzRgC0q0BbsSA6fffbZOSGKLSu4hQHsWD2LBDPq GBv6ZpuM94i+7rnnntwf9BgD+PQ+1eKxPcEvfvELNGH77bdffpgdfPGL1m9+85uVY0WSGslo3yYS uRgfErZYbAXu/FixIvf73/9+jjnuuONsiy22aBOPfXexjzDaRGIaCW+2j1W5PG8+GUs7eOW2E1jd zfMGO875gw8+mNtCkhcriFlgx5672OYCC7owJuwfjILjxr7F6VlGtv766+dV4tCxT3CCLSkQh9wA tq2AjcX7Qsc4YplO8eJP86dgQO+f1mtN2bWiTFd2/ciJXk6qepCJXuvS2RrSvSuvMs33sCykK1lq BXK6GFbq+X2bXmhrkXE9TIeBq59ZSlS+mW6wfS+8op5hVPX5z3/+Y6NGjaokeuP+vJg4LKx7Ynyd fkgEo53XXnstf3tJ/bLgVx4+zvpuMLCyWjgPJ+/Tm7hImLkAq6me+aEKArjKN5lUTcldJHgzp+ml qbnRZr061b6fEr0qYkAMiAExIAbEgBgQA2JADIiB1Z0BrCJFkhQF+/MisRYLkp1IrpUVrArFyl0W rAxFAg4/4/dbN1x44YV5T118TsQ+vmUFq3qRlEX52te+lld+ou5X9DIJCr0v+FyJJCOSmkjYInFZ b/nLX/5id911V04IYvUqP4/6fqGPi5PK2vd8Ium9Xn6AeplnWx0S3dxCA8lcPJANBbxz6wZsL4Et DsrGcffdd+cVsoj5yle+Yuussw6quWD7AyZgsdUBkqq+IEFMvrCiG4leFiRx33jjjTwvMD/Kiv+y wJ83JImR6EVB+zgvsVx++eV5ZTBWWOPYWM4///y82hereLFHsd8ehD5CMSAGxMDqykBDemJpa+bT jRI3mJhNh3nud75S2boheWSfnNhF1rdYlIrsbSrpBZgTlLkCZZG8RM4yPYENW/Q240lskBcusvHz F1ivs78Pt3yDK+uf4/I+OaDlBRu04+cY+KaUiVxgWVs+jnXeWCGzDsQNCHtI4acmbNePhfFE2ojU f/fJL1jz8Abrmr4pRjIXid6c4AVCQCEkGfGFouApsZb5KrZsSCaIyWfRorR1w7gm+8bWxYMJ2C8R zaJ42dcLa+srbURavOzrtBNpI0Y95Gijj7dFHy/7uo9VfCu3kSMv+7r4a8sAuSHS6mVfp51IGzHq IUcbfbwt+njZ132s4lu5jRx52dfFX1sGyA2RVi/7Ou1E2ohRDzna6ONt0cfLvu5jFd/KbeTIy74u /toyQG6ItHrZ12kn0kaMesjRRh9viz5e9nUfq/hWbiNHXvZ18deWAXJDpNXLvk47kTZi1EOONqyW RSIXn4OwohJbG0Sfc8891/BgbF/42Q77qzIRiTgkN/kwNq7oxS8zsVIWyBWpvi3WkVDESk4UrC7e brvtcp1jhIB9dKs9swVbBSCxyFWtTIj640ESGlsN4OFsWD0MxEIl/MHPr9xFovdvf/tbHgP0aM+3 lQ3uBTafHI6rZ+FaLR5bEVx66aW5NexRzCQ5V/TCgNXB2B6h8pk1excvWBCF7SVQPHeQseIXK3pR OKYstLww0YuxYUUvtpxAHziPSBr781Y2fpw3JIRhw/i4KpznA3kB9F/GH1bm4qFx2IbiO9/5Tu4X 7WCVORL/qCMecwHbVWDvYqwcLiscG5E+XvZ12om0EaMecrTRx9uij5d93ccqvpXbyJGXfV38tWWA 3BBp9bKv006kjRj1kKONPt4Wfbzs6z72vzG+kujlBRsHj8Kbp69DN/+nF9mw6elG6x7GViR8s2fO 2Sa3JQuahT433yK0PIwtE54exjah/0DreUrx7We1/uPJ8eNFp9g3B9+49cL4UkE7+POFOsZ6G3Xw 4c0AOjyMDXsM4amovj3vj3a8HOuIu/L579uE3hPyw9hyghdBaXjNacUwholEbhqx46qwF8Qme8ve vKkj/F/s0Zt082fPtbXnDLMTN/sqWsxjLOsfuuUZv+LFn+ZP6/XEv8fwvvNyrIM3vX/0/tH7R+8f XCtQ/DUiyt7G6wYxByte/OEfganwmhLnDG2cN8QclF68P3RejnXdv3T/Xpnz59FHH80/g8c8RGKW D9Ty8w5JN3wOow6+abGSzZ4924YOHZpXXEIHO1ZuIkHIZCV0PoHL/WfpD+ScR8IRCWEU/Bwfq1oR 7xO9WPWK/WFRYENhPBKD1113XdZhHOuuu27FB3vnYtUrVrfil6IoMR6yT/Rile+NN96Y20cC2ieO q8WTT7SFZC14qOf8cTUzfLGqFglx1MH7t771rTxWv61C7B9JayRlEYMVudhmgf3GRO+WW26J8Mrx I/nNLSu4ohfj53lDO9j7933ve1+Og1wtHnv4YmsJxP/pT3/Ke/SutdZa9u1vfzvH4MXHwwfJeSR6 4UMbHvz2u9/9zv79739XjgOxOAdI9oJX7NGMwhj0GevUAVm8j+LFn58Psa75o/sv5sQyXT/St3cp rvWixAtQNVx8+1+t9313Wq/BQ9LVmRfoFJ8CcP3CdTcnMBNSxyQlsBho4QcPLOhFmTdlss1+/57W dZ+DCsVSvPrx42cn2OcH3+5Cz7/YHPQsqPPGSR0QY+UfvnnFt3f4x0QsiIdfPeWOcX+xu+fcYmsN HZR4Soug8968iGw5geA0rfTNXFGX2y44zoneFh5zfxhjWhk9Y9IU273Xvrb3usWG+/WMhT5LM37G eFR8/eff88a6+BN/9V4/OGc8av5o/mj+1Hf/9e8b1vX+0ftH7x+9f3g9WFrU9WPFXD/wILSf/vSn +TNb3Ee11jlBUg4P6MLP8bGKlwUJVm7dwBW92GsVCVS835kwLDt/PuHoV/4y0Yt4rC5GorcsHlsI INELGxKX3L4AWzMgycvrDfavRfIRC5OwNQD2isVnWNh9Qtf36/U41rL+oQef2I4AbWH/2M985jNQ L1FiPJKaWNmKcvTRR1e2K0SiF3sIw5+JXvjEeCR6sW0CCpKt8GXBdhbYugFjOvbYY/PWDT6eCXbY EYd4lLLzxjZ9PM8bbDhvfKAfV/TGRC/8GM9EL7YAOeecc2BqUzAGnLvnn3/ekPxFQSzKBhtskFco 9+7dO8tL88L+lybG+yp+xVx/PKdLUxf/4h/Xq2Utq2L+NLz00kvFlaqOUeJgmt58w+ZeeI6NwP5J xd4LLZGpmUpLLRXKLRwgPl8Xs1xRprgmG5sedNbrS2dbwzpL7p3DoRXxbJTatoibDG5wWHmLwhi/ V289xCLOxyee8rd21X6qkZ3beUGb4+aOsYtGf9OGbLJuSuMWyd3MSQsxWNmLUuhaGmyhqtiTF0Li ILWFWkPn1EaKmfTiOPvClufa8J4jW4KWBHKxpKU+jeJbkvH10bWEl/gTf7j2LGvR/NH80fzR+0fX j2VjQNdPXT91/Vx9r5/4WT62XsBnuAEDBuRkIX4qz1L2/sU2DniIFgp+To/EJItf0YtEL+KRCPzq V79a2QKAiUDGELGCFAlhFGwBgJ/rI54JV+hPPPFE22STTVBdojBpiEQuEptYSDR16tScHIYzEo7Y 1gArQtEuC/YovvXWW7PoE7ro96abbsqJRa9nXBliNTP4xMInrFLF/rKez7IYnANsbYAHm2Hs4LZH jx7ZFVs3YEUvynvf+978gLcshBds3XDJJZdkLbmDgONkohcyE72osyDRi9XAKFgJjBXBKDiWpT1v eAAdxomCRO8///lPQxIXXwyUFawWf+CBByoreqMPxo/rB/6wjSO22Lj//vsre0ZjlTG+PKhWGF/N 3p5e8bp/6f61+t6/Vuf3b0NKijbjAsKCicQLCvVeB79F//szG/DaS9Y93YyRt2jAxS83kF5dPFRs K9WyByAnOFNEQ0oUY0XvounTbcr6G1r3o07IF1HGVOvf2zm2onF035w32scNDTdTyPhDIdK3DOHD 1b3oB3/T0/hwAxo5skiitte/t7Nf6iBf88oV9nynZ6zfoAFpRS/GhjHCkmppNS+YKsbawhkTuy1i biv58GFss6fNsI0bN7dPbXhSjmNfQBS0RR1k1j1Cj+J9FS/+4pyA7OcN5wv0KJSJUQdZ8cU/WDwP 4AWFvBGjDrKP837RF35RB1nx4p/zhpgnSnqhTISedSCK5o/mj58TvM5gbpTpvU7zR+8fXT90/fDX BH/9+L//+z97/PHHcZnI+6t+4hOfaHNNidcP7EOLBCgKkrbYZoHzCytpuXUDEr3oEwUJXCRyN9hg AzvttNOyfzakF46LK3KhR+IRz32BDVsoYK9c1PEwNmwv4cfPPpCMxdYMWGWMB4fBB6tksVoWhUlM 9peV6QUrmrFQCQV7zSLZ6vuFHm2jPR5n7N/rPZ9YJf2pT32qTVzs//e//709/PDD6CY/jwZ7JdOH K3phw8PYkHjlOKBDgS+2frjhhhuyjHMA7jgmJHpxXPDjamE/fiSl0S5K5AjHPXbsWBs1alTlvHFs OSC9VDtvSLw/9NBDlSQu44iIhw8SvcgbYOUyx0UfIAqPBYh9lbGfL8aNh7hxywrGwJ/1snja4IdC mRh1kH3/3i/61jN+xRe5EXCHQj6IUQdZ/Ov+xflBxLxAoUyMOshvy/x54YUXcqLXDwyDKSv0aZ4w zuZfcr6tO3CgWbe0GXm64GFVbqqk/4qLYcs1Eapka3HJjRbJhxwD04J5Nm7qNOtxerppDFs3e1R7 Yf/eTh0RNlx0sQIXN1l8Gwkb/3ws6owj8uIIxB++XcbNZaONNrJu6QFqtLMdxhGpL0P6TJj3pl36 7LnWa0Rf69q9+LY0b9dAnhLCFyX3hzo4ztymcaWtGrI+qRbMm2/zxs6yU9/5DRvWs/pqaLTF/lFn oY5IfRmW+VBHLIujrsyHOiJ9y7DMhzpiWRx1ZT7UEelbhmU+1BHL4qgr86GOSN8yLPOhjlgWR12Z D3VE+pZhmQ91xLI46sp8qCPStwzLfKgjlsVRV+ZDHZG+ZVjmQx2xLI66Mh/qiPQtwzIf6ohlcdSV +VBHpG8ZlvlQRyyLo67MhzoifcuwzIc6YlkcdWU+1BHpW4ZlPtQRy+KoK/OhjkjfMizzoY5YFkdd mQ91RPqWYZkPdcSyOOrKfKgj0rcMy3yoI5bFUVfmQx2RvmVY5kMdsSyOujIf6oj0LcMyH+qIZXHU lflQR6RvGZb5UEcsi6OuzIc6In3LsMyHOmJZHHVlPtQR6VuGZT7UEcviqCvzoY5I3zIs86GOWBZH XZkPdUT6lmGZD3XEsjjqynyoI9K3DMt8qCOWxVFX5kMdkb5lWOZDHbEsjroyH+qI9C3DMh/qiGVx 1JX5UEekbxmW+VBHLIujrsyHOiJWSiKhh5W3KNgb9/3vf3+u0ycL6QWrKbkPLhb2IDnHZ7PAh4ne vfbaK+/5y3iu7oTPQQcdVHngFz/bYTUrksH47IdfcJ5//vn58xbikehlYhkPWjvllFNsvfXWa/PZ yief/SrP0aNH2y9/+cvc1r777puTxBwTECthkejFqlrITPRinOgXD6pDAT9cjOTjOf7s1PIyYcKE 3A5+0QpfJk/p4+ORCMWqVpYzzjgjHxtlJnrZD7ZVOPjggyvcQI/zhwexgTuckwsuuKDNWLEtBR/G VhaPBVVI9GJcfusGjAHnDWNEP+gXq339+HHe2Dc+q5933nmVvrnCmklcHpOPx7EzGYy5hII2f/Ob 3+T6DjvsYDvttFOu8wXx2KsZK8vxK2LMh2qFfXk7dURvi/UyH+qIMcbLZT7UEb1/rJf5UEeMMV4u 86GO6P1jvcyHOmKM8XKZD3VE7x/rZT7UEWOMl8t8qCN6/1gv86GOGGO8XOZDHdH7x3qZD3XEGOPl Mh/qiN4/1st8qCPGGC+X+VBH9P6xXuZDHTHGeLnMhzqi94/1Mh/qiDGGcl7RC4GOQBZcUKOeusaH 77eef/2z9U174TZ07lKkIFNsEV28tqYmixRlSk+mi3Rr3RYvslnpAjnvoI9a5x12rtww6unf+6Ae x4m9jvBTk0GDBuUbDo+LyBggjomFx4cbKf6xgQs4Hu6GnxKh0O79UY/9Q0dfotc9PPle+8vUa6z/ kEHWOf2DIdMO/kAdXtKYMn9FNbefdXmoBY/4tnrW5Kl2yMAjbPvBxYb5/vjYL9H3jzoKbChLO/4c lF4UL/40f/T+0fWj7a8m8J7gdZfodaij6Pqp6yfmgd4/ev/46wSvDXFelPlo/uj9E+dJR54/d9xx h91yyy353oj5vv3229uOO+6YV0zioWt44HZaoGT/+te/sg8Sisccc0zeWg88sGB1JT7D4WFZWH1L TrCFwk9+8pO8ry8+530gJQw322wzw/6qWCCEVaF4Jgv6/vjHP577Z7tc0cs+sCUC9oLFFg5Ibj79 9NN2zz335Os59u/9/Oc/bwPTgijEYwEStlJAIhcJ6QMPPDD3izjs+3rzzTdXEtxoH4lejA/j4NYN 0F944YWVBCZsKLXO/+233563g4Av2sPKXiQs8bwZyEi+IsEJPjE2lA8kTpAU9u3i8zS2PSAX8EM7 eKAatkQAd1jNi8/MKIcddli2o1/GcOsMyPhcvc8++9jGG2+cV9EiOetX9CLRywfBwR+/rMV5A2Lc SBRvvvnmlfOGxD8SsyhYCY55gzj0z+Q+zhe3n4Cf5+/aa6+tbN3AFb2IR6If7WJ8SDBvu+22+QsA zCNss/HYY4/lfvClxM4774xmc+FxE6H0dcpAjhPIQl8i9L5OGah4/fuhbG7EeVHmo/nz3//+aUg3 mMqKXpxwFE6GMoSdk2fxHTdZr3vusL7ppw5p6SwMiG5BeKK06FBNF1zclnI6eOECmzVtus3dbW/r svcBuU24oJT1yz5hL6tDx8J43KyxaTq+xePKXsbTl4gYFtRx88UNBRvk42cqZX3Cn/qy/jkOjz7m zgl/tTtn3mR9BvSzbpk/tJc9MmJIbD/T2KlI8MJj4fwFhi0b9uy7v+05/ODsBz2K74/xRNjL6tCx KL7tFxyeD/Gn+aP3T/GPKv9e0PVD10/dPwoG/P2C1wqif8/4ut4/ev/o/aP3DxjQ9aPBsFct/qoV coQVt8cdd1ze65a+tGFlKBKLWNGLRC/0KLjWYqXrZZddVnmoFmM9YruHPffcs835YKIXSVysNOZ+ uj4OdSQiP/e5z+VVnhwPEA9jQyKYOh+HGOwz/OSTT2Y1Er3ww19M9GJLBxTeV2rdP+CHcSKBzlLW P21I8iIJjfH49pnohR+Sxf/+978NK4XLChLz2K/Wx6NPlJ/97Gc5se3HjL18t9lmm7xFIh/khkSz T/Qifvz48XbppZfmhLCP92MoO29+6wYkejkWPz6/opc+sON8YMsNLKxiwWpuLyNZfdRRR+V8Abkt Q8SzT1/3x1IWVxaj+FYuxZ/+/YT3A4reP0vmrxqee+65Nnv0FlS1ffUXmbYWs8aH7rXFN11va/fs YV3Tt3rp7lBcyFJKF1MPl/ZinW+RpMSDwxanp3dOmDvPuh70Eeu0w/srF93YNuVa/deyIR7JWtwc BqeVx/jWETcvFF4YGI/JgYIbF36igm8lsecOVvLSJzuEl1o2utbyeXjyP+zmsX+2ToO7Wu/+fdP4 Em/FLhipX/KHyVtMYIxvzoxZ1jh5oR0w4nDbflCxkpd9lWGt/mvZ2FYtn1o2xRcM1OKolk38iT8w UGuO1LJp/mj+aP7o/VPrGlHLpuuHrh+6fuj6UesaUcu2vNcPrHK9++67K3vWsj0ittNDUm99PBi8 pCBhiK0AsKIXWyXEMmbMmLxyGHvi4jhY8JnvAynZWbZlxD/+8Y+8hQJWo2J1K1aRYk9bfMZkG1gp e8ABB9gWW2yRm4wcIdGLla/4bMoyfPjwvFoUK5avueaa/JmYD3FDPGKwdQM+p1KP2Ng22/NIn/RZ P/OJlbdlBVsPYJXsu971rjZmxvtE70c/+tG8UvnGG2/Mx84AJN6R5MXxx2Q0ffD5GucVK4ixxy0K HkyH5DFX/EKHFb3Yc5n9Q4dS7bxh5TQSw4jxBfHXX399Xq2Lc4tV1Sy+bWwDwj16v/nNb9Il948v BtAG+sYYUXAukFfAg/r4hUAlyFV8H06dq7Vs9K3lU8um+IKBWhzVsok/8QcGas2RWrbVav4g0csB eWRWHDpfp4/XNY9/0xr/frM1jn7CBvXpnb7V6mXWJT0ttSWpmrKn6bGZi2ze3Dk2Zc5c67zl1mkV 7/5mNfbk9e37eln/1Hn0Mfg5CFb34kaFn27gZzP4uQ9vRPi5Ci7euOnMmDEj/6QEF3DctFB8W+yj TEdbjCnz9boJ88baXW/9zUZPfcy6Dexh3dMq4i7duqS9ePGtbUqTpwe0LU7jmz9nni2aNt+2HLCt 7TH8IBvWY13fZZu6b9/X6VSmow3o7b5OnzIdbYoXf35++DrnSJmONs0fzR8/P3ydc6RMR5vmj+aP nx++zjlSpqNN80fzx88PX+ccKdPRpvmj+ePnh69zjpTpaNP8aTt/kBDF9gLYjg+84TMcHvAFrFY8 v75Of6/DrzfRNhbRIIGLBUHe7utl8dDhsyN+yo94jMvH+LqPx+dRfN5Ef4jzxcf4On3KdLQBvd3X YQOf+DyM8SJRgeQnfrUKZPExrDPRCxmrdbE1AsqcOXNym/hMja0S8bmaMbD7OmQU6PC5G4l48O73 VqYdY4v1rEgviOd5QzvgD3/Qx5hq/bN9tunRx/g6YsAbxo1jxXYOZcXH+Dp9y3S0Ab3d1+lTpqNN 8eLPzw9f5xwp09Gm+fPfN38ann322Xw15Ykn+pNeTx1xTW+OseZnR1vTKy9b8+S3rDkldvNlt1cf axic9gPaYENreOeW1rDOyCWaZL/EJRzaUTCOWOaOhC++McVNGRdq/vQCNyj84WaDn+QwwVvWRjUd +yVW86umR9ybc8fYczP/ba/OftEmz3/L5i6eldwbrHeXPjaox9q2Qe+NbbP+W9k6Pd8e/qqNHXoe N7GWb5mNccQyn1o6xhFr+ZbZGEcs86mlYxyxlm+ZjXHEMp9aOsYRa/mW2RhHLPOppWMcsZZvmY1x xDKfWjrGEWv5ltkYRyzzqaVjHLGWb5mNccQyn1o6xhFr+ZbZGEcs86mlYxyxlm+ZjXHEMp9aOsYR a/mW2RhHLPOppWMcsZZvmY1xxDKfWjrGEWv5ltkYRyzzqaVjHLGWb5mNccQyn1o6xhFr+ZbZGEcs 86mlYxyxlm+ZjXHEMp9aOsYRa/mW2RhHLPOppWMcsZZvmY1xxDKfWjrGEWv5ltkYRyzzqaVjHLGW b5mNccQyn1o6xhFr+ZbZGEcs86mlYxyxlm+ZjXHEMp9aOsYRa/mW2RhHLPOppWMcsZZvmY1xxDKf WjrGEWv5ltkYRyzzqaVjHLGWb5mNccQyn1o6xhFr+ZbZGEcs86mlYxyxlm+ZjXHEMp9aOsYRa/mW 2RhHLPNBovecc87Jn/Ww/y4eTsbCOCL19SLjiPXG0Y9xROrrRcYR642jH+OI1NeLjCPWG0c/xhGp rxcZR6w3jn6MI1JfLzKOWG8c/RhHpL5eZByx3jj6MY5Ifb3IOGK9cfRjHJH6epFxxHrj6Mc4IvX1 IuOI9cbRj3FE6utFxhHrjaMf44jU14uMI9YbRz/GEakn5kQvvqXyDqijtKdnI+35wY4S21V8wYD4 0/zT+6/YV6bsOqHrh66fZfNC9w/dP8CA7p+6f+r+qftntX8nVNPr/qH7h+4f9d8/sUgKiV4UbN3A RK/uv7r/6v6r+2+1+2w1fb6QpBddP1b+9aPhmWeeKbIIZF0oBsSAGBADYkAMiAExIAbEgBgQA2JA DKzRDGBv3XPPPTdzEFf0rtHE6ODFgBgQA6sxAznRW5Zx92PmSlzomH33dcUvueJO/LUyoPlTrJD3 7xlf1/tH7x/MB75POB+gQ6EedV1/i28/PRfkizxRhg8K9aiLP/HH+cC5wPni9ZgrLNRDZoyvK17X b8wHzhPOB+hQqEdd80fXH84HzgXOF6/HXGGhHjJjfF3xuv5gPnCecD5Ah0I96sszf7Dd4c0335zb w4PTRo4cmevsj/1QRn8o1KO+PP0rXvxp/uj+yesJ5wKvN16PawUL9ZAZ4+trQnzD008/XdwlyYpQ DIgBMSAGxIAYEANiQAyIATEgBsSAGBADYkAMiAExIAY6FAM50cssNxFHwDqRRwWZhZly+hBhZ53I GMgsil9yL+RanIA38af5o/dPwUCt9wqvO0RypveP3j+cC5o/uv9gLvAaQaymox6Iovmj+YN5wHlD rKajHoii+aP5g3nAeUOspqMeiKL5o/mDecB5Q6ymox6Iovmj+YN5wHlDrKajHoii+aP5g3nAeUOs pqMeiKL5s+rmT8NTTz3V+sm/4L/NK04GTiCLl32d9ojRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z9i9PGyr8c4ytHHy75O/4jRx8u+HuMoRx8v+zr9I0YfL/t6jKMcfbzs 6/SPGH287OsxjnL08bKv0z8ifdokessy8giknuh1vuFqduqJim/lVPy1MlBtflBP1PzR/PFzgTPI 68rqZTrGxjlV5lumU3wrA9X4oZ4YuWYL1ezUExWv97+fC5o/BQOek7J6mY7cxfdUmW+ZTvGtDFTj h3pi5JotVLNTT1S8rn9+Lmj+FAx4TsrqZTpyF99TZb5lOsW3MlCNH+qJkWu2UM1OPVHxuv75uaD5 UzDgOSmrl+nIXXxPlfmW6RTfykA1fqgnRq7ZQjU79cRlih89enRerlvJ/Las4IXsG0QnKN6P9qgv G5DixV+cJ5o/xQ078qL3T+0N5yM/4q/tdTnyw2t25EnvP73/yu7Lmj+6/ujff/r3L+8Pun+0/qqR XPj3R7yv6vqp66efH5wzcZ7w/RX1mj+aP5o/uv/y+qDrh+6/ZZ/TOD/quX803H///a37MiBCRQyI ATEgBsSAGBADYkAMiAExIAbEgBgQA2JADIgBMSAGOhQDDddee20zvz3CyP23iWVHQntE+lJPOSLt EelHPeWItEekH/WUI9IekX7UU45Ie0T6UU85Iu0R6Uc95Yi0R6Qf9ZQj0h6RftRTjkh7RPpRTzki 7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE+lFPOSLtEelHPeWItEekH/WUI9IekX7UU45Ie0T6UU85 Iu0R6Uc95Yi0R6Qf9ZQj0h6RftRTjkh7RPpRTzki7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE+lFP OSLtEelHPeWItEekH/WUI9IekX7UU45Ie0T6UU85Iu0R6Uc95Yi0R6Qf9ZQj0h6RftRTjkh7RPpR Tzki7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE+lFPOSLtEelHPeWItEekH/WUI9IekX7UU45Ie0T6 UU85Iu0R6Uc95Yi0R6Qf9ZQj0h6RftRTjkh7RPpRTzki7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE +lFPOSLtEelHPeWItEekH/WUI4q6UskAAEAASURBVNIekX7UU45Ie0T6UU85Iu0R6Uc95Yi0R6Qf 9ZQj0h6RftRTjkh7RPpRTzki7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE+lFPOSLtEelHPeWItEek H/WUI9IekX7UU45Ie0T6UU85Iu0R6Uc95Yi0R6Qf9ZQj0h6RftRTjkh7RPpRTzki7RHpRz3liLRH pB/1lCPSHpF+1FOOSHtE+lFPOSLtEelHPeWItEekH/WUI9IekX7UU45Ie0T6UU85Iu0R6Uc95Yi0 R6Qf9ZQj0h6RftRTjkh7RPpRTzki7RHpRz3liLRHpB/1lCPSHpF+1FOOSHtE+lFPOSLtEelHPeWI tEekH/WUiQ1Tp07Vil6yIRQDYkAMiAExIAbEgBgQA2JADIgBMSAGxIAYEANiQAx0QAaU6O2AJ01D FgNiQAyIATEgBsSAGBADYkAMiAExIAbEgBgQA2JADHgGlOj1bKguBsSAGBADYkAMiAExIAbEgBgQ A2JADIgBMSAGxIAY6IAMKNHbAU+ahiwGxIAYEANiQAyIATEgBsSAGBADYkAMiAExIAbEgBjwDCjR 69lQXQyIATEgBsSAGBADYkAMiAExIAbEgBgQA2JADIgBMdABGVCitwOeNA1ZDIgBMSAGxIAYEANi QAyIATEgBsSAGBADYkAMiAEx4BlQotezoboYEANiQAyIATEgBsSAGBADYkAMiAExIAbEgBgQA2Kg AzKgRG8HPGkashgQA2JADIgBMSAGxIAYEANiQAyIATEgBsSAGBADYsAzoESvZ0N1MSAGxIAYEANi QAyIATEgBsSAGBADYkAMiAExIAbEQAdkQIneDnjSNGQxIAbEgBgQA2JADIgBMSAGxIAYEANiQAyI ATEgBsSAZ0CJXs+G6mJADIgBMSAGxIAYEANiQAyIATEgBsSAGBADYkAMiIEOyIASvR3wpGnIYkAM iAExIAbEgBgQA2JADIgBMSAGxIAYEANiQAyIAc+AEr2eDdXFgBgQA2JADIgBMSAGxIAYEANiQAyI ATEgBsSAGBADHZABJXo74EnTkMWAGBADYkAMiAExIAbEgBgQA2JADIgBMSAGxIAYEAOeASV6PRuq iwExIAbEgBgQA2JADIgBMSAGxIAYEANiQAyIATEgBjogA0r0dsCTpiGLATEgBsSAGBADYkAMiAEx IAbEgBgQA2JADIgBMSAGPANK9Ho2VBcDYkAMiAExIAbEgBgQA2JADIgBMSAGxIAYEANiQAx0QAaU 6O2AJ01DFgNiQAyIATEgBsSAGBADYkAMiAExIAbEgBgQA2JADHgGlOj1bKguBsSAGBADYkAMiAEx IAbEgBgQA2JADIgBMSAGxIAY6IAMKNHbAU+ahiwGxIAYEANiQAyIATEgBsSAGBADYkAMiAExIAbE gBjwDCjR69lQXQyIATEgBsSAGBADYkAMiAExIAbEgBgQA2JADIgBMdABGVCitwOeNA1ZDIgBMSAG xIAYEANiQAyIATEgBsSAGBADYkAMiAEx4BlQotezoboYEANiQAyIATEgBsSAGBADYkAMiAExIAbE gBgQA2KgAzKgRG8HPGkashgQA2JADIgBMSAGxIAYEANiQAyIATEgBsSAGBADYsAzoESvZ0N1MSAG xIAYEANiQAyIATEgBsSAGBADYkAMiAExIAbEQAdkQIneDnjSNGQxIAbEgBgQA2JADIgBMSAGxIAY EANiQAyIATEgBsSAZ0CJXs+G6mJADIgBMSAGxIAYEANiQAyIATEgBsSAGBADYkAMiIEOyIASvR3w pGnIYkAMiAExIAbEgBgQA2JADIgBMSAGxIAYEANiQAyIAc+AEr2eDdXFgBgQA2JADIgBMSAGxIAY EANiQAyIATEgBsSAGBADHZABJXo74EnTkMWAGBADYkAMiAExIAbEgBgQA2JADIgBMSAGxIAYEAOe ASV6PRuqiwExIAbEgBgQA2JADIgBMSAGxIAYEANiQAyIATEgBjogA0r0dsCTpiGLATEgBsSAGBAD YkAMiIGOxkBTU5M1NjZac3Nz/uto49d4xYAYEANiQAzUw0CnTp2sc+fOBlQRA6uaASV6VzXj6k8M iAExIAbEgBgQA2JADKxBDIyfttAeesXs2YndbezMHjZnUec16Oh1qGJg9WDgWzs+uXoMRKMQA//l DDQ0NOQEb/fu3a1Hjx7Wu3dvQ11FDKwqBpToXVVMqx8xIAbEgBgQA2JADIgBMbAGMYCVuw+/tMCu fHSI9e5m1jP9dUs53s5a4LQGzQId6urCwKVHdFldhqJxiIH/egYWLFhgM2bMsOnTp9vChQutb9++ +Q9JYBUxsLIZUKJ3ZTOs9sWAGBADYkAMiAExIAbEwBrIwD9fnG9X/WuI9e/ZbL26NRg+4CL5y6KP u2RCKAaWgYGW9xPyRu5tZZX3Va4U7zlULztSid5lYFkhYmC5GZgwYYJNmTLF+vTpY/369Vvu9tSA GGiPASV622NIdjEgBsSAGBADYkAMiAExIAaWioFxUxfa124eZAN7W0rypkRUim5NQKUaM1PMUgkL TsSDeMB7o955wHdli3/lfVYi//RIbZlCuoRiYFUzgGTv5MmTbfDgwdrGYVWTvwb2p0TvGnjSdchi QAyIATEgBsSAGBADYmBlMvDnfy2yO14eaAP7hKQuOmWSd2UOQG2LgTWZASR6WVreb//zKa3oJSVC MfB2MPD8889bly5dbODAgW9H9+pzDWJAid416GTrUMWAGBADYkAMiAExIAbEwMpmoKmpyb5zcxeb uqB33pd3yf5cEqqy1pdrEYXF2mfxIB7wPqk1D+I7i/5lerOffVoreiMzksXAqmRg/PjxNnXqVBs2 bFh+WNuq7Ft9rVkMKNG7Zp1vHa0YEANiQAyIATEgBsSAGFipDCxatMiO/30/G9C3S8uD15iAIvLX +ZBVxIAYWD4GmAxGK6iXl58fpRW95cxIKwZWDQN4QNvo0aNtvfXWs65du66aTtXLGsmAEr1r5GnX QYsBMSAGxIAYEANiQAyIgZXDAJ4wfuRvBtl6g4pErn8AG3rkU8e1g8PK4V+trikMNC/5gMOWLRvw nmv78MMGu/porehdU2aGjnP1ZeChhx6yDTbYQPv0rr6n6L9iZEr0/lecRh2EGBADYkAMiAExIAbE gBhYPRjAqqUj/m+wjcyJXq4w9Kt3/QrE1WPMGoUY+O9gIL63WuVfH6NE73/HOdZRdGQG7r//ftto o42U6O3IJ7EDjF2J3g5wkjREMSAGxIAYEANiQAyIATHQURhAovfj/1skeltX7RYJJyw4bNVhdS+3 cVh1+I7BDTa0X8Hm42OabcGiFTuOld0++Cvj7e3qt9p4pC8/TyuKF8xgtNVailW8rXJRY3//d+zq neh95JFH7JVXXsmDPvjgg61Xr17xUCSLgQ7PwH333Wcbb7yxEr0d/kyu3gegRO/qfX40OjEgBsSA GBADYkAMiAEx0KEYQKL38F8PthED/Sre1kQuDqaSoIILFx0uA/bpaTZyrYbUl9nQvg22YLHZ7PnN NnO+2etTzMbNaLbmptSH6+fU3TvZThsVY/vCHxtt3PS29uUZD/pZ2e1XG9/K6HdAb7P108rs9QeZ devcYGOmNtvrk5vtrVkt59DxWm1cK1vfI2092x3bXab5g/Oe59ZqMK6Vfdw4UG6Dko6+UpjYhcLX f/vZVZPonTlzps2bN68yHlQwzv79+9dMbh1xxBH2u9/9Lsc999xztummm7Zp4+0WZs+ebXPmzMnD GDp0aCn3q3qM48aNsyeffNL+/e9/Z87f/e5323ve8x7bcMMNV4vxgY/VkbdVfZ58f0r0ejZUX1kM KNG7sphVu2JADIgBMSAGxIAYEANiYA1kAInej1xdJHqZu/U0lOm8vZ765sMb7PhdO9k6a9X2npdW 6976VLP9/hFke4tyym6LbJfNemThjN8ttPEzV2wCbGW3z+OIuCL73Wpkwe/gPrGXQp630Ox3idPb nsbZfHvLaXt2sp1bEvdn/L7Rxs94e8ezqnr37yPWeTaKrzGKkdD2hxNW7Dyvdpz77LOP3X777aXm Pn362LbbbmvHHnusHXbYYdazZ/qmpqWs7oleP77nn3/eNtlkEw59leNtt91mxx9/vI0ZM6a07379 +tl5551nJ598cql9VSpXJ95W5XFX60uJ3mrMSL8iGVCid0WyqbbEgBgQA2JADIgBMSAGxMAazgAS vR/+xWBbFyt600q+/GCowAmTT0Hdrtg9rd48csdOtt+WDXmRLgPmL2yyNybPs369utqQfl2tU6fW VNdDLzfbRbe3JnpP3GGy7bnN2jn0pKtn2MT5VbKZbHwpcWW3X204K6LfLp0Kfg/cqi2/k2cusvkL G23dQT1wSivlsdeb7bK7mmxWWkn7dpXT9zTbZZMiiXna71pWaL9dg3mb+m3zfuK+Hm4ssF974tuf 6HVDyonSxx57zJD8RfEJwdVxRe/qMD486PJrX/uaXXzxxfm6Sj7XXXfdvNXFSy+91EZ/4IEH2tVX X22DBw+m6yrH1YG3VX7QNTpUorcGOTKtMAaU6F1hVKohMSAGxIAYEANiQAyIATEgBpDoPeQXQ2yd AcgIIsVUlNafkReZwpwAZiK4Tvzqfp1sx3e0ZhpvfuAlu+qGx+2NCTOtsakp/1y5c0rybrHhUNt5 q5G2y9br25vTm+3SBwYUCefUz8k7TLK9ti0SvSdcPdPemts7xy3LePCT9Bi3stuP/VFeEf2e+cFO tuvGBb9N6YT9z7WP2fV3P2dTZszLx9m3d3fb5T0j7axjdrHePbBfgtnYaWZn/KHJFjcWWwlwPMuL O21ottsmDTYgbdV6xT3N9sqk8vb3XOdl23qDYoX2lQ/1s5mNfVbo+Vze41hZ8S3vqnReiq0RChmv absSp0P/KDecvOoTvT//+c9tyy23tClTpuTVp9ia4Z577snjwcuJJ55oP/3pT7O8uicEL7roIrvz zjvzWH/xi1/Y8OHDc31Vvhx55JH229/+NnfZqVMnO+ecc/LqaI5lxowZ9re//S3zOmtW2l8llc03 39z+85//WJcu6VuyFVj++Mc/5rGMHz/errzyyrxlRFnzqwNvZeN6u3RK9L5dzK9Z/SrRu2adbx2t GBADYkAMiAExIAbEgBhYqQwg0XvQVUNseEr0MsmFDplwYnIUOtbrwXePMPvuh9KS01Qam5rt/F89 YH/++7NIa1mnzl2tS49+1rR4oTUumJ19oMe61N6DN7BBm+xRGcup75tke7ckej/7i5k2YQUneld2 ++Q04vL2u9kwsx8cVvC7YOFi+9JP7rR7Hx+T+e3SLSXDO3WxxQtmZh43HjnQLv3Svja8ZW+Hq+5r thufLBLtcVzLKh+9c4N9eOsi6fz1G5rtP2+Utz/5hbtt7uRX8jjX2fqjeR7UM5+WdVyrS1ye5OkF 40HBMbeWItlLGaYbT1n1id5//vOftsMOO3AYGY877jhDohQF+/Bi9S7K6p7ozYN8G18efPBB23nn nfMIsOXFH/7wBzvooINKR/TUU0/ZAQccUNna4cc//rGdfvrppb7LqvziF79oSOKi3HXXXbb77rsv a1NrVJwSvWvU6X7bDlaJ3reNenUsBsSAGBADYkAMiAExIAb++xhAoveAnw21YS375+Y0VEsyikfL pFS9SbNODWmLgCM654eCoY0b733BvnHFPdZr8Dus34itW5J7nVqSXs22YNYkWzBjrM2bOsa69lrL Bm70gUpS+Yz3T7YPtiR6j/nZDHtrft9KEjiOJ6Wqbd2UsMbDyFIqzV6d3JT2gG2wppRorpZMrNb+ 8PTQOCRTJ6c89EtvNdv8xa2J8Ngv5D7dG1LfZkPSQ+Z6d2u2yXMa7MUJaZuEBeVx1fqtNk6vTwTY xR/vbJsUC53t1zf9xy665pHMbZ+hm1qnrj3z8TYuXmALpo+1qS/fbx/cfj27EPsmpDJngdlx/9tk M+a28tKrW4N161Ik26cnfWog89weD1iR3bdHsx2x9Rw7cLt+uf1zr5thz01J5yn919jUkLaKaO2n ccozZvMnZr+GIdtb5+69V+j5rHYc/Xo22Jbrpi8dmtN5eavJpqbzU3YeyXOfHg02Ks2jof0abNFi nM80F2Y125TZaT4l/ulXL+YD5gsyua6NVnVr8vem04okPm0rC/0evWWJXjw8bOutt87dY5UpHnDW rVu3dhO9WK2KawtWslbbimDSpEn5HHTv3j0//K3aMeIBYY8//ri9/vrrttVWW9m73vUu69y5s9Xq AzFz587NTQ4ZMiSfL99+NTtWM//jH/+wrl275v2Jsc3C0hbMKyTMH3300Rz6hS98wX74wx/WbAYr bj/2sY9ln7XWWstefPHFNrxVG+8rr7xiDz30kI0cOdK22WabytYa7KyxsTGv0P7mN79pP/vZz7L6 T3/6k+266665juMcMCBduFpKtX5o94i2sf3E6NGjM79YDb7RRhvlc+79fL1a+0vL+/Tp03O/mBOY jzj+ESNG5D+8J1dUUaJ3RTGpdmoxoERvLXZkEwNiQAyIATEgBsSAGBADYmCpGEAyZt//GWJrp8Qm fkaOVbXFmkOkSqEhttaoqYbbrNfJzj+0+LDd2NhkB33xzzazx7us99qbt2mxPB778yLJVfR35vsn 2T7bFRnNz1w508bP610ZEeM7pQ/2H3uv2Se272TYF9iX+ekBb7/5Z7P9+fGmlFRqe0SIj+1vvn4f +/T7Otnw/q2tpDyx/fFfzfarB7Hysi0PO77D7JD3NNi7RzQY9sz1ZXE6lD882mz/+xBi2sbFfsuO i8cXcauRnewHHyn4Xbio0fY9/U/WOGQH6zFg/SX6Qb+L5k63aS/cbtefv7+NajmwX9zflI4Joy3G 9dV9G2z3zYo2j/11U04i18PDNutZOtfhwNFsSxk33ezoX+GclvczdlpbXuC3POczHgd2rDg9PQBu o6FpVhWHl5LPZtc83JT+MMi2/WP2fzLtK/2RbRusZ7HbRcuRFHDhbU2WFqYvERfbWVLmWSz640ws Wm37voPutjOqc1rErJjX9hK9L7/8ck7esTck6nr37t1uone77bYz7OmLUrxn2EKBuO706FFs4bHT TjvZAw880NYhSUjUfu5zn7NrrrkmfVmDOVQUJI5/9atf2dlnn13pY/HixTn5Sx+/bULZw9iiHQns E044IbfHvpDYRoL0W9/6FputC++++27bY489si+S2K+++mq7W0egT2zb8MILL+S4Cy64wL7yla9U +ovjRRIZ40KilwVJdcR897vfrSRb77jjDvvgBz9IlyUQiVkklVliP2UPsUOCF+P73ve+Z/PmzWNo RswNnBcktzGeWGL7S8s75hK2wMDqZMzFWH7961/bpz/96aheZlmJ3mWmToFLwYASvUtBllzFgBgQ A2JADIgBMSAGxIAYqM0AEi4f/OkQG5oTvbV967UespXZqSm5hnLfk2/YGVe9ZAM23K3e8DZ+X9x1 ku3bkuj9FBK9c9o+jA3JuAs+0snetU5r2LQ5jTlJvVbv1p+//2es2deua7IFi1v9UPPtX3bHXDtx z17Wecn8RA6667lmO+9mJOpay1n7N9geLQlSJBAnzlhsa/fvnJIcLVnF5Prtvzbb/S+2jfP9lh1X aw9L1g5OD187bc+i/Tsffc2+ds0E67fe9ks6Os28Ka/aYVtMtc9/ImXEU7n96cX2g9taD/Ss/cz2 2LyQf/qPZjth14a6eNhu/YJ/11Wb6pspkXvU1a3H7vs5+ur0UL60Z7Avy3s+ffs4V6fugRXHvofW +tk3NtsDL7WODZZPv68h/9FrRppLc9LDA9fu3zXz8f1bm+2OZ9rG0HdFIFcI//3M1nOzItqt1kZ7 id7rrrvOPvKRj+Tw9dZbL6+qhdDe1g3bbrttXoUL32VJ9E6ePDknS7FalGWdddaxqVOn2vz58ysr qmmLid72xuftSCSfcsopNm1amIwtjV9//fX2oQ99iF21i9jH+OSTT85+iEN8PQXJUzy8DQXJSiQt Wfx4sbUDtmLAMZeVT3ziE5W9gW+//XbDOa5WYqLX91P2kD0kV9EetqZgGTp0aD7HWKHNsttuu9kt t9xi2LbCF9/+svCOJO+3v/3tSpNI+vft29feeOONzIcSvRVqVOlADCjR24FOloYqBsSAGBADYkAM iAExIAZWdwaQ6N3z8pTo7V+s5OXPXn1yJqcU06pZ6JiIqoUn7jTbDn9f33zov7n1GbvyX+tYl579 6473/Xx1t5TofW+xoveIK1Kid27brRuO37WTHdGS43wxZQ3P+NHf7aU3p+dE70YjB9gln9/LNhxR 7EuBFbm/fqhIPHH8vn0MGA8p+9PdL9k9j71is+YutP3TU8aO3OedldN40m+b7ZlxrTyc+YG51q15 ll1z8+P22HMTrCllewf062FnpoTqR/fcLMchmfiNv1Tvt+y4OL4yPHGnOYnfIuH9q5uesl/+Z5R1 Tvvyet6WjDPbpsfDdtHJ78tjGv36XDv1Tz0q53NZeWicPc6a3vyHnf6x7ezwvYrjPf3iO+1fz4zP /TR16W3dNzyktJ+y417R5xOD+Nfzk+3Ge56zV8dPt2MO3NJ23zZlp1N59LVm+/K1recF74DrTupk a6XcFPaV/ng6aaNfStsLJN+eaan41mmvjOndN7dpndavHM+SPFd5n+QeU18JKzEtOg+03/2F1i8K vH1F12slerGiFitzn302L2G2k046yS6//PI8BJ+wK0sILm+iF4lX9oWVrjfccINhdenChQvt73// u332s5+1cePGVehYnkQvG8F2Bp/85Cdt4403th/96Ef217/+NZuwIva2226jW7t4xhln2CWXXJL9 zjzzzMreuO0F+u0bdtxxx7wlA2M839Bhy4Xjjz/e9t1337ztBfYAJl+wcxsO8IJtEbD6l1s3oB9u 3YBtD/zWDb6fsvOKRDQS0ihbbLGFoS2cH5Snn37aDj/8cHvmmWeyjIQsVvf64tunvl7esep52LBh hoQytu5Asnn77YuLP+YqZCSuR40axaaXG7Wid7kpVAN1MKBEbx0kyUUMiAExIAbEgBgQA2JADIiB +hhAonePy4baoLS9aiUBlZK6KD7ZW19rhdcFB8+xnTcrEr0/+MOz9tfXN12a8Da+Z+0+yfZrSfR+ 7PKZNs6t6MUuBNcc18m6poW789MDyXY94Xc2bdZ869y1R06oNS2ab4P697R7/ucT1j05YTXvEVc1 2cRZrV349mfMbbSTv3+rPfx0awIJnueftKsdtkdxDPe8kJK26WFjLDNevtvmTSl+Pg3+OqWEa9PC Obb+sH52x6WHZ7dXJy6yT/+qdXUxlL7feFxsuxpecPDcxG+R6L3g98/ZTWM2qebaRr9Bt5fsf88o fGfMWWQHXt46Jj+epeFh4Yw3berzt9pXP72DHXvwu3N/n/r2TfbPpwoO8dC9we/+aGUcvp943Cv6 fKLTa+9+0b56+T8q/ffr3c0e/dWn8/YQ46cvtsN/1rpyFit/b27ZG/eFMdPsgDP/nPY77pFWZ3e1 xoWz8/uh/zt2tZ6DN660tzQVvr8YE2Xqgfd9uXVcXr+i62WJXiTU7rzzzry6lNsv9OnTxx555JFK Us8n7MoSgsuT6MW+r0geIkmJrQ9ee+21nODzx45kH/rASk6U5U30HnPMMZWHzqE97AE7aNCgvGXE +uuvn8cAfT1l//33z6tZ4YuE72mnnVZPmD388MOGBC/KwIEDc4KWgZ5v2LDSGqtmfTn22GPtl7/8 ZVYdeuihdu216VuMllLvw9h8P/G8YgsKnBfcM7BSd8yYMW32EUZXEydONPCFVdfwwbYZ2D+XxbcP 3dLwjhXXOHYUJJn9au+sXAkvSvSuBFLV5BIMKNG7BCVSiAExIAbEgBgQA2JADIgBMbCsDOBD+24/ KRK97beBBHBec1gTr/7kPNt0BPbSNfvq1S/YvW8hMdZ+HHcx9fiNPSba/tsXK3oPv2ymjZ2NBGcx DuyN+5W0tyzKH+54zs7+9dPWb8Pd0+phPFyo2RbPm24zXr7Tvnv0u9Pq2iJR+92bmu3m0YgoxuPb /9jXb7THnp9kPYdsZt36r2udOne3+VNftg16T7Qbf3goguzNqY320ZwcLOJnvnafNTcusp5DN7du fdI4U7K3KT0EbfbYR+3eH2xvA9Pq3remLbAPX5n2mGgZN9D3G4/L+3GcHn+Z+N2M/P7qRbt3wkap 7fb5HdIw1v7ylfVwGLnsdmHavzetYI7jWSoemhvT8S60E3ecakftPSK3e8KV4+3fE/FgtrTjc+Kj oUvKoJbwHY97RZ/PW//5qp1+0Z3Wqfcw6zFoQ+vco7/NnTDa7vvRrvkLgOmzF9n+lyHZzXmdEsOf nWfDBxVz9/I7Ztvvn+iVHyjX3LTIFs2emB4e1y/94UuM9vlubbeYo60xKTwXtIHS2n9RN3vwq4wp PFbWq0/0brbZZjmxiQdc4brAgtWjeIDXIYccQtVK3boBK1OxohclJgIrA0gVn0xenkQvtqbAilis EvVl7bXXzolLJHyxlUS9BQ+vw0PsULA9AZKb9RQkuLGamAXnACtuUXyC9P7777edd96ZbhV84okn 8gPZoHjHO95h2F+ZZUUkerEiGPsYo2BFNVcIsw+iTzhjL+WjjjqKpjbHsSy8Y/sQJvfPP//8vIUF 9lJeWUWJ3pXFrNr1DCjR69lQXQyIATEgBsSAGBADYkAMiIHlYgDJhPf/eGhKSKYUU0rKxVW80LHU 3hqg9Sfr399/kn1gq6E57OK/TrDfjR5aaZt9eBzYqzk/CCztDGFp1wX75yutWyOcvdckO6Al0Xvo T2bam3Nat244dbeF9smduud+vv4/D9htE7dOq3l7ttnCoHnxfNt32JN27vE7Zb+r71toV9zXpTIe 3/7eZ9xgU3ptb136DKvYMc7Zr91r/7li17RHa4M1psTozj9ID2VLybnIx4i1mm1Y2gJjUMpFr9Vt gZ20Rxfr0a2LvTV1nh18ZVpl7La+8P3G4/J+nifqz99vku3xnoLfH94wwf74TG1+GbfF4On2i88i CW42afo8O+Cn3SvH6cezLDyctP1b9pm9hue2j79qsv178qA2x8vj8P3E417R53PPU/9o4xcOsz7r v79ynJYSttefsMjWHdLHps9aYPtc1q0yzqY0Vz675Yt2/IeKlck4mNenFA/iuyl9OTB3Yeu85PHU i2gLviw8J5Ax72GCjuWRs1b9il72TcTDtLDf63e+852cOKQe6BOPceUn7D4J648LNhRcd6o9jM1v fXDVVVfZcccdVwSFV9/H8iR6y8aPrkaNGpX3JF7aRO/BBx9c2fYBDw3D9g31FCQVuaUCtigYP358 Jaw9vuGIldhIDONhaUh+YlUtk9crItHr20CSF8nesnLFFVfkbT5gO+uss/JD2+hXz3HU4v3LX/6y XXjhhWzONt10Uzv11FPtM5/5TH5IYMWwgipK9K4gItVMTQaU6K1Jj4xiQAyIATEgBsSAGBADYkAM LA0DSLjsdPFQG9C3NQlVxLcmnYpkVv2tnrLty3b0flhlavanh2bYBXdidWf1sv0GZlccWfR/T3ro /Jl/bO37nL0n2oE7FCt6P/TjmfbG7GJLCLT2ww/Ntt23KOTjf/K0PTazdS9d39v2az1jV5zyrqy6 7clZdtbfsCq4KL79gy+abG/OG0RTBRfPnWJ3faV3XgUK5d4XN9vUOYUZz1w7dBv8NdimxTArcaxM mDo3JVXbPpTI9xuPi3HV8MStX7LjDihW/v3m3ul28b1pD4s6yj6bzbPzDuuVPR9+eryddF1KFjcU CUU/nmXh4ZQdJtjRexeJ3uN+NsWemFj8xDoOy/cTj3tFn899vvagTe6VfgqPLKorN54wNyV6e6dt PhbYXpcUKyZpnjH6D3be8dvY4XsWW1xQ/9ZMs3PSQ/UefpWa5UXM8WJcGB5zvKw/9o22Y17e3qrF +xW9SMJtuOGG+af3WBGKJBoegFZW2kvY+STs0iZ6DzzwQLvppptyt3igF/ahLSu+j9Up0esToqef frrh4Wn1FKz+xR7BKEj43nPPPZWw9vimI1chQ54wYYJBRvFjuuuuu2z33XfP+vhSqx+s6L7xxhtz CM4PtqgoK/Dh6u+PfvSjeR9f+tVqnz61Er1IZiPxf/XVV9M944gRI7Jur732aqNfXkGJ3uVlUPH1 MKBEbz0syUcMiAExIAbEgBgQA2JADIiBuhhAonfHi4baWkskehnempCipj380Kjn7NufLh7Q89jL c+zYa4rkYrW4945caFcdXazMvfvpefb5a/FT/6Kc+8GJdtCORbLioB+1TfReeNA023vrIqF44pVj 7aG31mVYG9xlnbF26XHFPpF/e3SqfeOWYlUrnGq139pIs93/xUbr06trelhbk+1wXnpYV3ORiPvS Pg125A6F5+LG9ECisQsNx/zUa7PsnI8Ps769uhkSvfte1jbRW1+/rSPwtQNGPmPfO7pIXN/3zCw7 9c//z95ZgMlRZW34TNwTIAGCRvANHggJ7u66OPtDsAUWWBa3sIGwuBPcbXHXxRMswd0TEkiIu89f 7+25PdU11To9nZ7Od/Jkyq7VW9UlX517bq1wHU4Xne/fd7odt20i7cOv/WiXvNsjmSS39qTncGLf P+xvNULvETenF3oz1VOq4/ncsbVC75ZXpQq9M0Z9YLPHfGbb9+lmJ+y3rq3Zs3OSEWLsTW9W2y1v JVc12Mwn55Ve6PUDeOWyU9kEu7AIm6/QS5d+YtBiDMLmRcNou8J1lJPQGw5xgEiNWJ2LMXjZhRde 6JIS/uC2225LZsvG2yfs2LGjTZkyxXn0zpw5003ZVgyhl7i/TzzxhKuKgeoQ5OOMNKTF8Ah/4IEH ksly2Y9MQi8FcT5xXgwcONB8DGnW80ESfueeey6LRTEJvUXBqEKyECh7oXfu3Lk2ffp0NxomX1vi LupZ9lGbRUAEREAEREAEREAEREAESkSAUex3u29t6xgIvTy7e49Cqmc+4XWI2Iuxwgu/6afrdfjG 7j45IfSS65BgfKBPRqZP33vpCXbn0QlP2leH/2knP9MlWc/A7cfYbjVC785XTrURUxEqE+04fv1f 7ZhdugXLZuf9d4I98RWib9169ltzop27V0IQvubJn+22T7sn02Uq39fTslmVfXQ2tZiNGDPVdryu mRuki5iy/64JWzrkiz/t/wa+YFNnENs00b6P7z7YunRqHQi9M23b6xCva/nlUm84fXi/Vm3xlT16 ZkLoXRDs7q7XB+2aUHe/w/mbNam2F06Yb0t3asZu2IB7v7T//kQZiXy5tCcdB+r5R9/f7f+2S3j0 Hh4IvcPGwLt2f3Opp1TH88XjaoXeza5E6A23c4FN//UdmzP+W7e+zxpL2b+P3thW75Y4fwKd3/Ee OTEzb7+/4Wmt125qiBT/O/PvzghWn58fVF8CC3v0llLonTFjRrKrfb9+/ezdd99N7u1pp51ml19+ uVvONJjZeuutZ8SlxcpJ6IVj3759XbsIf8GAZCutlOjh4FbG/EFHwYv6t99+c1uvuuoqI4SFt1wE UoTdNm0SH9W6d+9uP/30k89eFKH3jDPOsEsvvdSVOXjwYOvfv3+y/PDM9ddf78IpsO788883BGxv uexHt265h8xAiCWe82effeaqIFQFvPFML4YhWsPSx0ouRpkqQwSiBMpW6OWmNHnyZBdrh3gwBGz3 8WCiO6FlERABERABERABERABERCB8iCA0Lvp9d0DoTeQpNCuAquNJRrEoq1Z59cnxGAvCsdP50/4 2p7659JJcWz4CLODbksf33TDrhPs7mMTQu8rgdB70lNdakTnKrtkhzG2e9+ER++Ol0+1X6a0c+2j Hbus8LVdduQars2PfzDNznmuXTJfuJ1X7DnDdlq3rUt30s1f2Su/r5FMl6n8RMiKauvXs8puP8xl t7c+GWXHPN7Vxei99dAq26RGv9noqIdsxNgZ1rT1Ei7Gb9PWnW3oRcsGQm8rJ/RueXWrZLspN5d6 ff3R6dxAhLzjqPa22ToJD+ZHPgoElafT8yX/XutW27/3QNA0Gztxpm1x5nCzpTYuCgfKP7nf73bU 9gmh95jbJ9qbv3ZK2V9/PDLtd6mO5ysnzLDlakI39LusRWw750z8OfDs/dTmzfjTmjdrak8O2sXW WzURF/m0R82e/Swzb7+/4WniDOL3VftbYx38EoJw7fqvBySOlc/TUNNSCL3Tpk1LirrsB0yIqXrP Pfe43YoKvWGP2D59+hjCadQYiIv4r97KSeilTdtuu629+uqrrnkIogijmeyOO+4wvHgx4vN+9913 1r59bZiaXARS6qNejOnLL7/s5vkT9ugltMKuu+6a3BaeyVRPuI0MsMZAa3G2//77J8M13HfffXbQ QQclk2Uq3yfq1i13oZc8HPtNNtnE3n//fVcEHsR4EhfDYIhIL6G3GDRVRjoCZSn0cqEeP3688bWq ZctEQP/EzSrdbmi9CIiACIiACIiACIiACIhAORBA6O17zYrWPqGDuibxLJ8UqII1ToYKnvlT1mdY nj9ttK3T9hN7bODOyV387zCzgc8HA1rNrltOn2Um2L3HJYTel4f9aSc8WSv0/menWqF3u8sCoXdy rdDbccan9sbAv1jb1s1tzrxq2/rKKhszJbX85RartpcCx7hmQTDdqTPm2OZnf23T262d3L9w+ec9 PtMeGp4qyMLh+kAz2O4vCeHtmCuG2OuT+rn8Tx87x1ZbNhFyYq8LhtoXc3qbNUkM9Na5XbW9ctJ8 a9Oqmc2cPc/WG9jUFgThHjzXcL3R/crGeUEgPi4352177dq93ABx8wIvU4TeR4fVlu/rYbpBtyq7 /kCzxWoiaJx8zVuB9/Ni1nLJNWPbky8H2ntM79/s5N2Xc8f7zjen2yWvtIk9XzLtd7GPZzqu/zup Vujtc2mq0NukqjrlOM2b+rvNGjXUrji6lx2wzSpu/854ZKY9/lnd8yTbcfM/BtJ5Cx8nv55vK99d 5FM07LShhN6tt97aiAWL0b0e71tvJ598ckrc2qjQO2nSJOfdOnHiRJcFT1IGhMOZ7PPPPzcGOLv7 7rt9cW5Kb2LPjxXZBMVs2ymjW7f8BEfyeKOd6667bnJgNAYoSzeoHF6phDoYN26cy3777bfb3/72 N1+Um4bbS1nHHHNMynYWwiEvHnroIUNw9UZIA+9Zi6cwHsNxFq4nOkgdg8OtssoqhnCP7oPHcDSG M+uI7Yz42qFDB/v+++9tySUTH0ioL1P5vj2ZuDPQXJxD4RFHHJEUnhGkWS6GIZ5L6C0GSZWRiUBZ Cr1cgLmocuFF7JWJgAiIgAiIgAiIgAiIgAg0DgIIvX2u7hbEn60RSINmI0M5R95AJAwe9N2O+HU5 TYN8M757wm47ZT3buV83l58/Pwc6xmUvmX0x2mz0pEQdXdqZ7bjqZDt/r44uHULvsY93Sbbhil3G 2B41Hr1bXzrVfp3SPhmcYc6E76x/n8l2zuEbuLwjJpid+l+zT4Pez02DhvbuFgzYtk/guFozFtwF t79vdw4LPG4XWym2fAp54QuzG14PhLYxZu1bm524ldlhfV3x9u2Iibb16e9byx47uPxX7vKH7dZ3 abfxi9/m29X/a2q/B/u1aTBO2vFbBvlrQw3bfoMDwWtELdtM+wX7bJxn/viCXXTQivZ/uyY8mmnE XUPMHgsE9W/HJjxDuwXa+darBd582wVCd1PXTBv+3Z+28+mvWJvV9g1E6ebJesLtIWU+HGjvDsv/ YDcck3Bv/n3SfDv7qab29veJdoT3J1xPQx/PaPm+HW/8Y3rSo3eDQS2T51P3zmYP9w8YBs7OT31i 9v2fZs2D19vNV6m2q/atthbBAj+Jfuf+an9Wr5jM58vNNE3Q9399SpYT8/54+xQ/DvRzDTttKKH3 +OOPtxtvvNE1fu2117YTTzzRhXhEgBwyZIgTCokPjkWFXtZFPXZbtWrlvIJxMMNWX311Fy7yxx9/ dN6Wviy3MfiTTVDMtp1yMgmOvp5M0xNOOMEIY+CNgdkQIHv16uV0E7x2iXWLZzKhG7ANN9zQhg4d WkdXCbeXdAxydvbZZ9uaa65p6DEI4ddeey2bbI011nCCeFibgbv3cmXgsltvvdW22267jPVEhV7K HjRokJ155pnMOjEej13ajACLYI2n76hRo9x2wm+ceuqpbt7/Ce9HXPmkS8edkAybbrqp8wZn0DrO AQTl559/3nkNcw6gS/38889uQEFfZ32mEnrrQ095cyVQdkIvFySCfXPhDV9Ict0hpRMBERABERAB ERABERABEVh4BBB6e1+5orVrW+U0XYSsWqv1jk1Ij7Vbss3h1btg5Et2+kHr2fF7r+U8T8N5pgUa D/FOOwZiatheCoTeox8lRm/Crtp1jO3ZLxG6YctBU+3nye39JqueO8Pm/vi43XH6prbDRism11Mu ++HFTTY8P/RXO/I/b1nzlfaxqma1lYbLnzR9vnVqm1BEZwW6S6vmySJt/ORZduAFL9uXs3pZs049 3Ia1mwaesQM2Dd6DkOlSLXDitfe//N02W7ur28BAbQ98EMQSfjqRLlxvdL9SS4pfWjBrgs38/gk7 fs817ezDegfhBQJFssaom/0Pt59N9770rZ09eKjN79LPmi++ik/upuH2zA28o5sHcYmxXDiQrtmk T+yNASsFAmqg3NcYx/jbPwJPw5v9GrNwPdH9LvbxjJbvW/H2KdNt+SB0w4Sps229ixMe2WzrGZx2 r53iUwVdwoPzKHAUtRbNatfd8NhndvHLrerwq02RaY4fV91zhRyBPuWOWSJ3tf1ySXy6xPbi/W0o oferr76yddZZJylghluMpyeDaW211VZudZzQi6cz4iWeqMyHrXPnzi6cwz777GOffPKJC3GAJhG2 bIJitu2UlU5wDNeTaZ52I3YiyHohl/RoJwiSxNQNGx6/V199dUqYC7893F7CCHDdxlq3bp1STpcu XZx4TMiLsDGOEgLwiBEjkqs5DojO4fjI4XrihFjE1P32288I/+AND1u0oPA+7rHHHi58A86AYctW PmnTcac9iLveCBlK3WGRnxAVl112mU9S76mE3nojVAE5ECg7oZe4vPyo+YGFu0rksC9KIgIiIAIi IAIiIAIiIAIisJAJIBisf0W3YBCfhAgV6A9OcGKKRTSWxMoc/87+9VWbN/kXW3flznbpcf1s7ZU6 pwiS4WJmz51vn3w/zh5+Z7z998daL1WEwX02SQi9G/+bwdhqhV7yzx37qc3540M7YufV7V+BqLzU YrUiLttHjZthF9/9oT346vfWomsfa95lTVYn7Zrdx9hegZA8Y9Y8W+uwB+2aU7e37XsvGYR6SCSZ H4x2NuybsXb0ZW/YyInNrPWqewUbEnBm//o/23O9Jjbo2L62WPuEYMjgaB/9MMNOvupV+2HkOHvj uj2DWMWLucK+H2O21ZWJcrPtVyJV5r9zRg2xueO/svWD2LGX/72f9eqxRB1BneP34+jJNuCOD+3Z Ib9YkzZdrPVKuwUF1xzgmio8Bxa3O/lpO+mvG+XMgTzzJv1kq7f8zG48dXNbbcXE/rL+88C5b6dr mUtYtv2u7/HMVj6tePvkadZt6XY2LhDv17241u16seZT7NxtxtvaKy9tPbu2DljWNDqYjJkwwy69 f7jd/cI3wTlwgFW1qBW0a1Nlm0v8xkgV/p2l/sYSaUZemq2s4mzfcccd7cUXX3SFffjhh9a7d++c Cj7kkEMMb06M7vlxg4099thjbsCuCRMmuHQIlIi6eIUS1gDBEzGU+Kp4g8bZ8OHD7Y033nCDrhEm YJtttnHpETgJCfDnn39at27dnBdnOH+29mXbTlkM6EUoAsTTsWMDN/kCjdixxx13nH366afO8zVc DBrKyiuv7Jjsueee4U0p82GBFI9fxEzEVjxaMfQYxF2OSffu3VPy+gVCaOBx++WXX/pVtv7669tH H32UXM6FC4lvvvlmJ8QTziFsyy+/vF100UWunvB6P59L+em4c6wJ+8EAfHj34kXsrWvXrm7gN+Ih F1OXktDrCWvakATKTujlok18FnnzNuRhV9kiIAIiIAIiIAIiIAIi0DAEEHrXvbxb4BmWvnxEKQxB ivmcpwvm27yxw23O2M8CWbE6ECOaWI9lOtgqy3ey7st2sukz59vYCVNsdCDGfvnTeJsduFA267Ci tVhx22Q9c0a+HoiIPzpZstUq+1qTVh1T67f5NuuX/9mCqb+6TvBLdmptKwXl08avfhlvU6bNceub dQzKXX5rqwqcVMLt7zD5XWs3f7TNC9yAf/0z8JKbP9taBi6ca63cxZrYAvvipwk2bebcIPRuq6Bd 21nTtksm88+f9ofN/vk5a9Wiqa0RiJttgljBn/84ziYFdVY1CbzcWi9l1TOCeMVBWYgPX08Kpkv1 dfmz7leOnOeN+8zm/P5RwGeBa3ev7ovZGkEMAlffL+MCBhNd+zmETRdb1VouG9RfRRzh1ON4/R6B 4L1xQlDf4KjHApF6Ys4cHM/qeTbj20et6fzp1mPZji40Ah7SP4xravOW2TFZX9b9rufxzFp+sN8z vn4o+EIwLQDS0tr85ZDa4zlrks3+7lF3vrRp2cz+EnAkxvJvfwYfGP6YanODc4QPBc2X7pPcnyjH dMvuBxT549OGV/t1o4vnlBguvuTzeK0iLOJRiqjYrl0hAnndZiP6+divW265ZTIecN2U5bMGFsTu 5T8C91/+8hcXeiEXJmGh13vaUh4ezcQnJjxGLuUgjiLMjxw50hZbbDFbbbXVcsqXjiICOO1BD8I7 uFOnTumSFnX9jBkz7LPPPjOmiMuI23j4Ftsk9BabqMqLI1B2Qi+B0hWbN+5QaZ0IiIAIiIAIiIAI iIAIlD8BhN61L0sIvUl/wxoRkNYjELK+PrZg5jibO3qIVQfT6uqgL3yMVVUFPQRbdw7i565sTRcP AsvW2JyRb9j8ST+4pVar7hd4Unbwm1Km8yZ8bfPGfGzV82akrK9q3taaL9U7EDlXTlnvFxAG5yMk B4OotVztrzb3t7cD0XhEqJ1VgRfskoFIvEVQd6o3MWXQtrmjh1p1IBAnrCb9sptYVcuONvuHJ2zB rMSgUk1aBgOgrbK3S5brftUUmnGyYMZYx3fBzPFBurpHq0nQjmZLb2BNO3RLW86Ne46xvWuE3r4X jrdvvvg4Lw4U7I7zb28m95d1TYJj2nKlPZh1lut+F348s58vs7992BbMmRqE8GhlrVY/2DctOHdm 2dzf3wvO0/G2YHYQbDnEsqpZm+A8Wi/l3ExmzGMGIZdiOUpuviYvYrk3kvxxuV/SNI4AA4pdc801 bhODs51yyilxySpmXZzQWzE7V8Y7IqG3jA9OBTWt7IReYuH4mCwVxFm7IgIiIAIiIAIiIAIiIAKL BAGE3l6XBkJvm5jddWpUzPpCVwUib/WcKVYdiGhOaGMwMOLlNm8TeOoGI4dVhfrKF1hH9byZQfmT Xe4mrRYPvDZbZCyJ9DY/8OQN6k4KuQvmBWIl3c2rg3YFZQTtzGiknx2IucHU7UekzgUzg1G9AivW PqZtS007qml7cOyqWi0W1BmEUcjW/qDAm/YKQmTUCL0bXTTVfpwUiNr5cqBhgWJZPWdyED95uvOY RWTOpf50+5Tv8UxXTt7r/b4H06oWba2qecCjCOdnsh3h31ZknsVxVyZTLpIzhH2444473CBbDBpG XF6MUAEM1HbDDTc4T1a8ehl8q02buAtY5aCT0LtwjqWE3oXDfVGrVULvonbEtb8iIAIiIAIiIAIi IAIi0IAEGECnzxVdbU6NOIk3IW68rjt+MIvoJKt8ArfsXRsLecMLp9oPCL2yohGoceRNeshHl8MV sW38VeE1i948A7Gdf/75yR1v27ati8k6a9as5Dp6Ft9yyy12+OGHJ9dV6oyE3tIfWUJjvPfee9aj Rw/Xi730LVCNiwoBCb2LypHWfoqACIiACIiACIiACIhACQgQ3/HA29vZJ+M6WRBWto55QarOBq2o KAKDA6F3/00TMXrXPW+q/TxFQm9DH+BMv61JVzd07eVd/oMPPmg33XSTi/9KPN6wEYuVAdyuv/56 F+c2vK1S5w8++GC7//773e6lG/yuUvd9Ye3Xb7/9ZiNGjLAVVlhBY1ItrIOwiNQroXcROdDaTREQ AREQAREQAREQAREoFYFrXl5g132wnDWLRijw7rwoUrKKJrBg1OtmU35y+1jVYx8XX7iid7jUOxf3 W2Kd/22F54PVUxLhZ0vdyrKsb/z48fb111/b1KlTrWfPnm7gLbx5FyVj8DY+ymGEzpQ1PIHhw4cH cbSrbKmlEh/AGr5G1bCoEpDQu6geee23CIiACIiACIiACIiACDQQge9Hz7LtbulhTQPtJBg8XbYI Epg/6g2rnpwY9K7pSukHvVsE0RR9lyOabmz5066LXa2VIiACJSDwyy+/2K+//mpLL720tW+v3g0l QL5IVyGhd5E+/Np5ERABERABERABERABESg+gfnz59vTH820k19YxYVv8CEcAmcmF6u3+DWqxLIk QGBmjAMvKzqBfH5PM64vevUqUAREIAcCDO5HyIZ27doZg/3JgzoHaEpSLwISeuuFT5lFQAREQARE QAREQAREQATiCDDI0XOfzLWTn1/Vib1VgWcv/2UiIALFIeD1czfQYegjStz6WTcUp06VIgIikJ3A jBkzjFjQf/zxh02ZMsU6dOhgXbp0sVatWmXPrBQiUE8CEnrrCVDZRUAEREAEREAEREAEREAE6hIg /uPs2bPtu1Ez7fkvW9l7Izra9xM72pQ5Leom1hoREIEGJfDQDo80aPkqXAREIEGAOLxNgphFiLpt 27a1Tp06uXANLVu21CBsOklKQkBCb0kwqxIREAEREAEREAEREAERWPQIIPbOnTvX5syZ46bME9aB gYBkIiACIiACIlBpBLzQywB/LVq0cP+ZR/yViUApCEjoLQVl1SECIiACIiACIiACIiACizABxF1E X/57kddPF2Es2nUREAEREIEKIoDIi3mxF3FXMXkr6AA3kl2R0NtIDpSaKQIiIAIiIAIiIAIiIAIi IAIiIAIiIAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERABERABERABERABESgkRCQ0NtI DpSaKQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERA BERABERABERABESgkRCQ0NtIDpSaKQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALpCEjoTUdG 60VABERABERABERABERABERABERABERABERABESgkRCQ0NtIDpSaKQIiIAIiIAIiIAIiIAIiIAIi IAIiIAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERABERABERABERABESgkRCQ0NtIDpSa KQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERABERA BERABERABESgkRCQ0NtIDpSaKQIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALpCEjoTUdG60VA BERABERABERABERABERABERABERABERABESgkRCQ0NtIDpSaKQIiIAIiIAIiIAIiIAIiIAIiIAIi IAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERABERABERABERABESgkRCQ0NtIDpSaKQIi IAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIALpCEjoTUdG60VABERABERABERABERABERABERABEQL UUtdAABAAElEQVRABERABESgkRBoNEJv69atGwlSNVMEREAEREAEREAEREAEREAEREAEREAEREAE REAESktAQm9peas2ERABERABERABERABERABERABERABERABERABESg6AQm9RUeqAkVABERABERA BERABERABERABERABERABERABESgtAQk9JaWt2oTAREQAREQAREQAREQAREQAREQAREQAREQAREQ gaITkNBbdKQqUAREQAREQAREQAREQAREQAREQAREQAREQAREQARKS0BCb2l5qzYREAEREAEREAER EAEREAEREAEREAEREAEREAERKDoBCb1FR6oCRUAEREAEREAEREAEREAEREAEREAEREAEREAERKC0 BCT0lpa3ahMBERABERABERABERABERABERABERABERABERCBohOQ0Ft0pCpQBERABERABERABERA BERABERABERABERABERABEpLQEJvaXmrNhEQAREQAREQAREQAREQAREQAREQAREQAREQAREoOgEJ vUVHqgJFQAREQAREQAREQAREQAREQAREQAREQAREQAREoLQEJPSWlrdqEwEREAEREAEREAEREAER EAEREAEREAEREAEREIGiE5DQW3SkKlAEREAEREAEREAEREAEREAEREAEREAEREAEREAESktAQm9p eas2ERABERABERABERABERABERABERABERABERABESg6AQm9RUeqAkVABERABERABERABERABERA BERABERABERABESgtAQk9JaWt2oTAREQAREQAREQAREQAREQAREQAREQAREQAREQgaITkNBbdKQq UAREQAREQAREQAREQAREQAREQAREQAREQAREQARKS0BCb2l5qzYREAEREAEREAEREAEREAEREAER EAEREAEREAERKDoBCb1FR6oCRUAEREAEREAEREAEREAEREAEREAEREAEREAERKC0BCT0lpa3ahMB ERABERABERABERABERABERABERABERABERCBohOQ0Ft0pCpQBERABERABERABERABERABERABERA BERABERABEpLQEJvaXmrNhEQAREQAREQAREQAREQAREQAREQAREQAREQAREoOgEJvUVHqgJFQARE QAREQAREQAREQAREQAREQAREQAREQAREoLQEJPSWlrdqEwEREAEREAEREAEREAEREAEREAEREAER EAEREIGiE5DQW3SkKlAEREAEREAEREAEREAEREAEREAEREAEREAEREAESktAQm9peas2ERABERAB ERABERABERABERABERABERABERABESg6AQm9RUeqAkVABERABERABERABERABERABERABERABERA BESgtAQk9JaWt2oTAREQAREQAREQAREQAREQAREQAREQAREQAREQgaITkNBbdKQqUAREQAREQARE QAREQAREQAREQAREQAREQAREQARKS0BCb2l5qzYREAEREAEREAEREAEREAEREAEREAEREAEREAER KDoBCb1FR6oCRUAEREAEREAEREAEREAEREAEREAEREAEREAERKC0BCT0lpa3ahMBERABERABERAB ERABERABERABERABERABERCBohOQ0Ft0pCpQBERABERABERABERABERABERABERABERABERABEpL QEJvaXmrNhEQAREQAREQAREQAREQAREQAREQAREQAREQAREoOgEJvUVHqgJFQAREQAREQAREQARE QAREQAREQAREQAREQAREoLQEJPSWlrdqEwEREAEREAEREAEREAEREAEREAEREAEREAEREIGiE5DQ WyDSM844o8CcyiYCIiACIlBMAoMGDSpKcbquFwWjChEBERABERABERABERABERABEVhIBCT0Fghe gkCB4JRNBERABIpMQEJvkYGqOBEQAREQAREQAREQAREQAREQgUZJQEJvgYftv//9r8vZv3//AktQ NhEQAREQgfoQuOWWW1z2fffdtz7FJPPqup5EoRkREAEREAEREAEREAEREAEREIFGSEBCb4EHTYJA geCUTQREQASKREBCb5FAqhgREAEREAEREAEREAEREAEREIGKICCht8DDKKG3QHDKJgIiUDEE/vjj D6uqqrJOnTq5KTvGcr4WzVNdXR1bxNSpU936xRdf3E0bWuidOHFibDu0UgREQAREQAREQAREQARE QAREQATKkYCE3gKPioTeAsEpmwiIQMUQkNBbMYdSOyICIiACIiACIiACIiACIiACIlABBCT0FngQ JfQWCE7ZREAEKoaAhN6KOZTaEREQAREQAREQAREQAREQAREQgQogIKG3wIMoobdAcMomAiJQMQQk 9FbModSOiIAIiIAIiIAIiIAIiIAIiIAIVAABCb0FHkQJvQWCUzYREIGKISCht2IOpXZEBERABERA BERABERABERABESgAghI6C3wIDYWobdZs2Y2f/785F4OHTrUNtpoo+RyQ89MmzbN2rdvn1LN559/ br169UquW9htTDZEMyIgAnkRkNCbFy4lFgEREAEREAEREAEREAEREAEREIEGJSCht0C8lSL09u7d 24YNG5YzhTvvvNMOP/zwnNMXQ+h99tln7aOPPkrWSZt32WWX5LJmREAEFg4BCb0Lh7tqFQEREAER EAEREAEREAEREAEREIE4AhJ646jksC6T0PvUU0/ZDz/8kEMp6ZOstNJKtvvuu6dPkOOWbN6yjUHo PeaYY2zw4MHJPT766KPt5ptvTi5rRgREYOEQkNC7cLirVhEQAREQAREQAREQAREQAREQARGIIyCh N45KDusyCb2TJ0+2u+66y+bNm5dDSXWTNG/e3A477DDr2LFj3Y15rvn111+turo6matr167WsmXL 5HI5CL3Z2iihN3m4NCMCZUVAQm9ZHQ41RgREQAREQAREQAREQAREQAREYBEnIKG3wBMgk9BLke+9 9569++67BZW+8cYblyyOblTo3Wyzzezuu+9O2+7OnTtbu3bt0m6PbsgldEM0T3RZQm+UiJZFoDwI SOgtj+OgVoiACIiACIiACIiACIiACIiACIgABCT0FngeZBN68eZFMJ00aVJeNXTq1Ml58xJyoRiW b+iG7bff3l588cW8qp4xY4YNGjTIHn74YcM7d/HFF7dtttnGzjnnHFtmmWUKHoxtjz32MMJgZLMl lljCxo0bly2ZtouACBSZgITeIgNVcSIgAiIgAiIgAiIgAiIgAiIgAiJQDwISeguEl03opdiffvrJ nnjiibxq2HPPPa1Hjx555cmUuKGFXgTWrbbayj7//PM6zWjTpo3df//9xj6FjbS9evVKrkrXRgm9 SUSaEYGyJCChtywPixolAiIgAiIgAiIgAiIgAiIgAiKwiBKQ0Fvggc9F6KXoJ5980n788cecainW AGzhytKJqD5NNHRDvh69u+yyiz333HO+uDrT1q1b28yZM1PWS+hNwaEFEWi0BCT0NtpDp4aLgAiI gAiIgAiIgAiIgAiIgAhUIAEJvQUe1FyF3lwHZkOQPfzww4syAFt4l/IVesN5o/PREAlvvfWWbb75 5inJ+vXrZxdccIGR9pFHHrFLL700ZTsLuQq9Y8eONcJCnH322fbAAw8kyznwwANt4MCByeWmTZva 8ssvn1zWjAiIQGkISOgtDWfVIgIiIAIiIAIiIAIiIAIiIAIiIAK5EJDQmwulmDS5Cr1kzWVgtoYa gK0hhd7oIGmIuyNGjDBCNng76qij7LbbbvOLbpqr0OszRes5+uij7eabb/abNRUBEVhIBCT0LiTw qlYEREAEREAEREAEREAEREAEREAEYghI6I2BksuqfIReBma78847bcqUKbFFd+jQwY444ghDlC22 NaTQu/7669vw4cOTTe7fv78NHjw4uczMkCFDDBE7bBJ6wzQ0LwKNl4CE3sZ77NRyERABERABERAB ERABERABERCByiMgobfAY5qP0EsVmQZmK/YAbOFdylfo3Wyzzezuu+8OF5Gcj4ZIIFzCb7/9ltx+ 8cUX25lnnplcZmb06NG27LLLpqyT0JuCQwsi0GgJSOhttIdODRcBERABERABERABERABERABEahA AhJ6Czyo+Qq9VBM3MFvPnj1tjz32KLAV2bPlK/TmMxjbcsstZ6NGjUo24pJLLrEzzjgjucyMhN4U HFoQgYoiIKG3og6ndkYEREAEREAEREAEREAEREAERKCRE5DQW+ABLETojQ7MhgjbEAOwhXepIYXe aOiGuNi5Ct0QPhqaF4HKIiCht7KOp/ZGBERABERABERABERABERABESgcROQ0Fvg8StE6KWqoUOH uri1zPfr18/69u3LbINZQwq90UHSOnfu7AZja926dXJ/EH9vueWW5DIz+YZuOOGEE+z6669PlnHo oYemDS+RTKQZERCBBicgobfBEasCERABERABERABERABERABERABEciZgITenFGlJixU6GVgtrvu ussVhjcvQmxDWr5Cb6YYvbSzXbt2hqCLvfnmm7bFFlu4ef9nk002sfPPP98WX3xxe/TRR23QoEFW XV3tN7tpvkLvgAEDXJm+kK5du9r9999v3bp1s6qqKmMwO+qTiYAIlJaAhN7S8lZtIiACIiACIiAC IiACIiACIiACIpCJgITeTHQybCtU6KVIBmbDevTo4aYN+SdfoTdbWw466CC77777ksl22mkne+GF F5LL0RnqR9wOW75C70svvWQ77LBDuIiU+ZNOOsmuvvrqlHVaEAERaHgCEnobnrFqEAEREAEREAER EAEREAEREAEREIFcCUjozZVUJF19hN5IUQ262NBC759//um8er/66qs6+9GiRQu7/fbb7ZBDDknZ lq/QO3/+fNtggw3s448/TinHL0jo9SQ0FYHSEpDQW1reqk0EREAEREAEREAEREAEREAEREAEMhGQ 0JuJToZtjUXobdq0qS1YsCC5Jx9++KH17t07ucz8sGHDksvZZqIevaSfPn26XXLJJfbwww+7GL2d OnVy4u8555xj3bt3t/bt26cUm6/QS+YJEybYBRdcYM8//7yNHDnS5syZkyxTQm8ShWZEoKQEJPSW FLcqEwEREAEREAEREAEREAEREAEREIGMBCT0ZsSTfmNjEHoRR5dYYomUnfjhhx+sZ8+eKeu0IAIi IAKFEJDQWwg15REBERABERABERABERABERABERCBhiEgobdAro1B6I0OYoZn7aRJk6xJkyYF7rWy iYAIiEAtAQm9tSw0JwIiIAIiIAIiIAIiIAIiIAIiIAILm4CE3gKPQLkLvYi606ZNS9m7/v372+DB g1PWaUEEREAECiUgobdQcsonAiIgAiIgAiIgAiIgAiIgAiIgAsUnIKG3QKblLvRWVVWl7Bmxct9/ /33r0qVLynotiIAIiEChBCT0FkpO+URABERABERABERABERABERABESg+AQk9BbItDEIvc2bN7fl llvOdt11V2NgNIm8BR5sZRMBEYglIKE3FotWikBRCTCg6vz581MGVi1qBSpMBERABAICOInwn4Gc FeYtcUro+qufRmMgwO+1Mf9uq6ur3TMOU1nlEOB+wrkZdUBsLHvY2K//EnoLPNPKXegtcLeUTQRE QARyJiChN2dUSigCeROYPXu2TZ8+3WbNmmXM88Cpl6C8MSqDCFQEgQFD1wmU2IbflbbN59ty7Wfa GkvNtY16VFvXxVo0fKVlWIOuv2V4UNSkWAJeTGvZsqW1atXK2rZta8w3Bps3b57NnTvXmPKfZxw9 5zSGI5e9jZyX/G/WrJn7jwMi843BKuX6L6G3wLNNQm+B4JRNBESgYghI6K2YQ6kdKSMCvORMnTrV /W/RooV16tTJ/WdeJgIisGgSOOGBeSXZ8fkLzObMN5s5x2z67Go7esNx1mello3WIytfaHHX344d OzYa4Szf/VX6yiCAMDV58mQ36PqcOXOMsXr4X66elPzOaCftxhO5devWTqRmXlY5BOiNhrPCzJkz Xc80PkDwLFvO52X0+bsxX/8l9Bb4W5LQWyA4ZRMBEagYAhJ6K+ZQakfKiMCUKVPcYKpLLLGELb30 0mXUMjVFBERgYRH4+/2B0Bt49NKzGcfecAfnwGkquZ72sS31RRovudR8bI96zjmH4ZqyKGfmXLNJ 06vtqA3G2UYrt2JVxZuuvxV/iCt+B3k2Hz9+vLVr1846dOhQlvuLwIvQ26ZNG9fOsmykGlVUAtOm TbMZM2Y4obdcPc4r7fovobfAU1hCb4HglE0ERKBiCEjorZhDqR0pEwK8/IwbN846d+4skbdMjoma IQLlQOC4+9J49KLyYii5IXNib2i50NkZgWfv+Olmg3Yab8ssXtm9CnT9LfQsUb5yI8DzuX+WKDdR jRANCH6EmECMli06BBB7CUmGwF9uYRwq8fovobfA35aE3gLBKZsIiEDFEJDQWzGHUjtSJgQmTJjg 4tStuuqqZdIiNUMERKAcCBxzLx69dUXdpGeud+v1jfXLfhqsT6b1aXKZBvknBl692/SYYPv0bp5L jkabRtffRnvo1PAYAt9++60T0xZffPGYrQtvFd34GXOAD9qyRY8AHyAYoI1wHeVklXj9l9Bb4Bkm obdAcMomAiJQMQQk9FbModSOlAEBXnz4TSlkQxkcDDVBBMqMQP97wh69CL7eZzfVkzfRbL+dJT8f nrI+mo+Bc3AMrq4RhGvTEK938ZYz7Lyd5roXdLZUmvnrL6JY165dK233tD+LIIHff//dEK8IAYWw Vg7G9QWvToVsKIejsXDa4EM44M2dGmJo4bSHWiv1+i+ht8BzSkJvgeCUreQEttlmG3vttdfsuuuu s7///e8lr18VVi4BCb2Ve2y1Z6UnwMjTI0aMsDXXXFMD/5Qev2oUgbImcOTdwQhpNebF2Fqx1ou4 CLWJRIi2CZGXaVTUrU3HVsx7+yZevElfWyYDtE2cOs9uOWCKMXJ6JZquv5V4VBftfaIr+ueff24r rLBC2fxuGZyLQeOWWmqpsuu6v2ifLaXbe0J3jBkzxhjkrFwG36vU67+E3gLPawm9BYLLkI2uHPfc c4+9+OKL9vHHH7vYQlwMGHF8tdVWs379+tm+++5r6667boZStClKQEJvlIiWi0VAQm+xSKocETA3 +vTPP/9sffv2FQ4REAERSCFwxJ0Jj14vyKZsDBbC6xNibSKFF4X9lLXMp7NoOT7tiPFmDxwy3g2k ky5vY16PKKbrb2M+gmp7HIGhQ4da9+7dy+bjMe/1EydOdOJzXHu1btEggFPDYostVjZif6Ve/yX0 Fvh7ktBbILg02Z544gk79thj3RcenwSXfuK30O2EL4Dett56a3v44Ydd91a/TtP0BCT0pmejLfUj IKG3fvyUWwTCBHjQ/OGHH2yTTTYJr9b8IkDg1VdfdR+36V673377LQJ7rF3Ml8BhdyD0OjfdUFYv 2IbXh71xE+EY/rphlW2zehN77esF9sD7CwL/3nB6X1xqPr824Q1cZSPHVwdC77iyEYxq21ecOV1/ i8MxWsoHH3xgP/30k1u92267uS770TRabjgC77zzjq200kpl87uV0Ntwx7oxlVyOQm8lPn9L6C3w VyGht0BwMdluvPFGF1IAr4FevXrZGWecYdtvv30ySDtxUz799FN75plnjLS4+9MVhbSy7AQk9GZn pBSFEZDQWxg35RKBOAIIDd9//71tuummcZvzXudHNybjkksuWTax0PLekUUgw/rrr2/Dhw93e8qL cLl0Z1wE0DeaXTz4toTQmwjJ4L1ya8MrsCNhT16/Y0dsXGVbrVYbnxOx964h1S7EQyImL/kSoRz8 NFGWLyExHREIvQ8fWtlCbzGvv6n0cl+aMmWK0cMxznB+wQmmXOKtxrUxuu7AAw+0Bx980K3+5ptv LDrQqO5TUWLFXX777bdt5ZVXLiuhFweuFVdcsbg7mmdpPG9xr41aOQ4SFm1jJSz/+uuvRjz0Zs2a lcXuFPv5u9CdKvb1X0JvgUdCQm+B4CLZ3nvvPfdSy8WWsAz33Xdfxm5hPPycffbZduSRR9oaa6wR KU2LcQQk9MZR0bpiEJDQWwyKKkMEEgSK/aAZfsFm9O1VVllFqMuUgITeMj0wZdSsA29N9Gwj6kJY 7I0Td31khoM3qrKd16oVef3uvPDFArt3KB68dc3n9XX4FL9NqLZHDpPQ63k01BRHl5dffjlj8d2D rvgbbbSR7bjjjsZ1vpw/DIXvQ3FCb3i77lMZD3tBGyX0xmN75JFHXKiWuK0tWrRwvYbXW289+8tf /hL7AS0un9blTkBCbzyrYl//JfTGc866VkJvVkQ5Jdhqq63s9ddfd18b8drla3V9jfi+11xzjb3x xhtuBHNG9uRifdxxx9lee+0VW/w666zjvIb56kzXoosvvtiFhxg5cqSLEcwP76KLLsoYU6i+9fLA Rr2EsaBLw3LLLee68dJgvJiffvppe/bZZ40HpVGjRrkbT7du3WzXXXe1U045JekBHd1BCb1RIlou FgEJvfUjef3119t5553nCvniiy9smWWWiS1w0qRJtscee9hnn33mtl966aV21FFHxabVysZLoCGF 3rgX7MZLqvJaLqG38o5psfdo/1uCEdFqVFgfZMHXEV728wf2qbLd10mIvGR7NfDkJXyDF3Cf+oQw DoFnb00hLpgDG0NKr4vrW7MdofexIyT0euYNNc3lRT9cNx6yvJMyiGc5WljIjbsPZdtejvvUmNok oTf+aGUSesM5CHux9957h1dpvggEJPTGQyz29V9CbzznrGsl9GZFlDUBsVDoToIRkoEYvfW1//zn Py70g3s4DR5Yl1hiCZs+fXqyGxRi7w033FCnGi/0Dh482LUF0ZnuUYSNmDFjhkuPCDNs2DBbeuml 6+Svb70IPojTdBtr27at65bVuXPnZFyrY445xmgbhvcG3R0YtdR3O1l++eWdsN2jR486bZPQWweJ VhSJgITe+oHMRehF5OUD1SeffOIqGzRokPXv379+FSt3WRIottB7xRVX2Guvveb29fbbb7euXbuW 5X4v7EbxwvfAAw/Y77//7u6zPA+U2iT0lpp446tvn5tqx6qIbX1IpMWTd491a0Xea/+3wN76rto2 Cx65T9y6aVLsffLjBXbfewmp1wvEybJD5bFu9ESzx//2Z9l0AU+2s0gzxb7+Ftqs8Iv+TTfdZL17 93bP+rzL8Dzw5ZdfOocQ/0xAPQxqxLW+HAerzibkltt9qhzuB4WeO3H5JPTGUTELC704WnXp0sW9 7xNWAqeKcePGJTOyfa211kouN6YZPq589dVXRoiUHXbYwYXxKof2S+iNPwrFvv5L6I3nnHWthN6s iLImuO2225JeafzgV1hhhax5MiW4//777eCDD3Yi6emnn570ckUM5XghjnChu/XWW13oh3BZXuhF XOU/aTbeeGM3MjGDpPCgMn78eCdGI0qHrRj1ItzyoAaTzTff3Im5PMT5F87LLrvMxbHhZkOXrZYt W7oB6gh9ceqpp9r7779vW2yxhfOODreNeQm9USJaLhYBCb31I5lN6OVjzp577imRt36YG03uchEa Gg2wIjX0n//8pyE2YP/73/9syy23LFLJuRcjoTd3Votqyj1vDDx6nXlJ1sfZdb64wZbE+gM2MNt/ g1qR9+pXA5H3ezImtm+2crX9Y5tasfe/HwWevR+wzRvl1daRWFtloycssKeOlEevp9RQ0/CL/ltv vRUbs533GnoA/vvf/7a5c+e6phDKYejQoQ3VrILLzSb0FlxwA2Ush/tBMXdNQm88zbDQe8ghh6T0 qMPJi+1oE9jqq6/uevvGl1Tea+k1zYCI2F//+td6ay3F2lsJvfEki339l9AbzznrWgm9WRFlTYBA eeWVV1rHjh3dV+qsGTIk4AWZwO6EODjttNMMD9uo3XHHHfZ///d/hvfrzz//nBLTygu9xOXh6xdi atiuvfZaO+mkk5wI/OeffyY3FaveVq1auQHm6CKSr02cONENbkC7+GrHDSlsEnrDNDRfTAISeutH M5PQS0B+PHn9AE2XXHKJHX300fWrULnLmkCxhV4+bPoeKXirRGN5pts+evRoe/PNN2211VaL9RAj Vj7b+fhJrPx0XmTpymcEdgQJ7sWEVaL3TDabP3++C2XEQKzsB92UuV9mGpQorn56+/CbopztttvO fUA999xz7ZZbbnFN4Nlus802c/PNmzd3H2Dj2oZ3HeXQMwlOPEPkEnqKNn344YcGY/Jwv2YfJPTG Uda6MIHdrkfoDYu7XowN1taEW9hrvSo7YuOEyEvem95YYC98kdge/v1v/xez47esTXfXkAX2eDAW oO8NF643MV9tvwcevc8cJY/eumyKuyaXF31fIyHddt99d7/onFr22Wef5DIzfDDm3sJ1BkeWOOP9 gWOPEwnvZGGLu46yPdfreDahN1354Tb4edpIaDvedcaOHWvLLrusdevWzd1LaHucsf+81/3222/u XZOweHhJ0+MzbNxjuKeV8n4Qrr+h5iX0xpPNJPSSg3jRTz75pMvMYLZHHHFEfEHBWj62oD/wPo7j 1lJLLZV1kDF+k/zuOD+Jsd2+fXv3v0OHDmnr8RtyqY/fCs9qHH/v/U8IOJ67MK4HaA8LyyT0xpMv 9vVfQm8856xrJfRmRZQ1ARfNu+66y92kEV7jjBvunXfeWWfTfvvt50Riv+Gpp55yMSx50eJGHffC xRc6wi9wMcYDdsMNN/TZ3QsX4RoOP/zw2Pq4IPEwgZGfiz5WrHr3339/e+ihh1yZhfzh4k1b6J77 t7/9LaUICb0pOLRQRAISeusHM53QK5G3flwba+5iC70HHXSQC0kAj7hBbqLbif1+4oknGvGivfEB lR4u2267rRONuUcSKz48Kjw9TYhvHxUIouUjcBKTGoHAGy8b9MDBM435qPHyTbiSgQMHptRJOsIc nX/++a5XS1zeaP0McEQ5XLcwyj3jjDPcfNwfhGTCKYWNYwQj7rW0zRsfia+77rq0YVVmzZrlejDB KZwPseHuu+92XPxHHbz1ynlwJb/PmpaWwM7XLkgKsV6QZRq2p09oas1qfkY3vL7Anv8caTgw0lVV WVUo8U5BSFcv9s4LNOTdAyG5TrlBHpc3yDdmcpU913+sQjeEGDbEbD4v+tTvxzphng9GH330EbNJ Q9Qk7BwWPV9YxzXNCz79+vWzd999l9VJi15H872OZxN6o+XHDRrK+5t/XkIYixofMXj3o2ekt2ee ecZdkxmvxXs9+218xOPaP2DAAL/KXnnlFffxL7kiMlPM+0Gk6AZdlNAbjzeb0Pvdd9+5ECnkpscx 3rBR415Or1/0g/Bvi/s3796+V2403zvvvOM++M6ZMye6yXbeeWfr1atXnfWsyKe+X375xY01FFtQ sJLfysIMAyehN/7IFPv6L6E3nnPWtRJ6syLKmiAXoffvf/97bEzdww47zInEvhJeFPHixRMHT6N0 RpdMbvrR8A3eoxcP45NPPrlOdh4S+FrMhTw8mECx6r366qudx3CdikMr+CJH2AhuEHzRxqMoagwY d84556SsltCbgkMLRSQgobd+MP2LC6X4wdiiIi/dM4nRnc0QkvgohgiHqDd16lTnWdCnTx8XqmaT TTZJKYKXJbwJyZfNWxgvBdLyUMp19sgjj3Rl4WHMvRDPSD5UDRkyxL2M8VKJl07Pnj1dL4pDDz00 6U1K2+ghwXUMjxw8HwhPQU8MBs6MGtdeyn3xxRfdgzFiJDHU8HpgNGQ+cvEiidAWZ9E28hKLIMfg mTDiAR7PacQ7/7IbV04p1hVb6M32gh3ejnAJg7j7Cl5T8KJ740svvRSL4h//+IddddVVKdvC5XOP o0usjyufkjBY4CWKOLlh4xzioZfj742PrNyHwz1rCHf0wgsv1PnAG66fc/yss85KeRnLV+glPiaC txdS8MDBU5oXKoQIjDJ5Lggb+dgP332SbXiV8dGY8xuRIvySKKE3TE/znsD2Vyc8egPF1gm2iWHU /Dypqu2snZrYxitV2Y2IvM6Tl9RsCRtLCcl350DsPXaLJjbkx2q75Hk/MFt14npdk8nnHTOp2l48 Rh69YZINMZ/viz5CE9clDCcXruFh7+1wb4Hwdca3PZvQG76OFnIdD+cPvz/5+rNtZ394xgjfB9g/ 7gU8Q/h9QujFm9JbuNxmzZq5ay4DbIc/tD322GPJQbr5EAj7dBYVegu9H6Qrv6HWS+iNJ5tN6CXm tb/X0/PI/8Z8afxueO71H455BuUZlmdrf07ybEJIlbDxDMrzrzd+s+TleZTniHRCb7714UDHPqYz Cb2pZIr9/J1aeu5Lxb7+S+jNnX1KSgm9KTgKWigkdAOBxHnRjAq9LN9zzz05tyP6MuaFXrxtDjjg gNhyeFDgAYEun/5rW7Hqve+++4yv2umMbqUMJOcfUPga3alTp6S4gRBDF12+UPNCGzYJvWEami8m AQm99aMZFXoRjhAdvfdNriIv4inXLb6QpzM+moW9V0h31FFHGS86a6+9dmx8b18WIiBCLB+76DLp vWbCIipenVzTveDl8zIlZA5xxrl20+Mg7A3q0/Xt29f1SuA6G7Z7770360cwemfwQBvX5S3XNhKC gF4R0e6cvi0Ic1xj8Z569NFH/eqiTov9oBl+0c32gu13hGPFfY0XlRNOOMENSsI2wisgvDLCO4Lw FltsYcSn5xzFGKSUwczCFq6f9dy38CDhPo7378MPP5zyIZeY83yY8HbmmWc64ZRl7rkcYx+aiAGJ 6NnD+YhdcMEFzrvXLdT8idbP+cs6ujoj0LIviKp4GfvQDdThQzfw8uXPdYoMx26kbXxYxXMHtuwT vz/uy0zD5+LZZ5+d5MR5zm+OgfE4nziX+LjMxwtvEno9CU3DBLa5MvExIbyulPNjA0fKl4+VR29D M8/3Rd9/MPXtQszkfuWtmEIvZeZ7HQ9fh7Pdh+K2e4ca6kbg5XrNh0WutYjAfCTnPsAYLbTNG883 iGcM9M2YKzxb8IGQD36Mh4Lttttu7r7PPNddxOKGvh9QVylNQm88be71vjdxNEbvjz/+6O7TPAfR W4ieTDwzhC0c+xYxl+cGzk/OIcrGaQPnARw1fFgRyuO5n3s/aanXD5LLR18cGXjmiPaOot586+NZ nGdtRGUfuoFnHx+6gWeXhencII/e8NlUO1/s67+E3lq2ec1J6M0LV2ziQgZjSyf0coPnpZOunNz8 s9m//vUv97Lq0xUq9JaiXi6GdGXCm44HJh5SfFw/335uFojFPBAhYodNQm+YhuaLSUBCb/1ohoVe YpYirHkPglxFXl7yNt10U/cC061bNydG8cDJdZAXPkRa4pNjDDgVjjNG7we8aTG8ZYg1Gmd4MiA+ 81J0VxBux5sXUfGKReTbZZdd3HW1R48eLgbphRde6DxxSY+Qdsopp7g6EL645vISdvPNN7ueCqS5 /PLL64SeQQxEGNt1112dBy8PxXhAUB9enIxKzoM1HqE33HADxaSYbyNtIkYfojDXUIRdRlXmvnHN Ndc4gRrx8vHHH0/J7xcWBaEXT2c+CHhjGVHXGx8E8HLxYjgvxnhQcRwxhGDuwd7CL/ikgy0eLmFD WPbnJx85ONYYL2Dc5xC/Od70YonGl+TcJ7QEXumk4YOHf4mhjHD9LHOsWRe1sICbbjA2vHb5fdAe xGhE6bARfoGXQQyPdX7LGAIuv0sY8SGHFzmmYeNc5rzk/MQk9IbpaN4T2PLyukJv0jc3EA2CrzMu aXIdS9H1wTJiQ5A6xRI5a/x8a9L4BD7tn5Or7dXj5dHruTTUNN8XfdrBNYXrL4YgxL3MWzGF3nyv 47QhfB2OE3Izbaf7PB/5EMGwdL0u3cYc/xCOx4eH4B7jPxb67A15P/B1lHIqoTeedljo5RmXj9mI s8Td570bQ4zleTrqlYvXLj2Dcb4iJCTv4GHj48Nzzz3nVvEOzm8Q41mF500M4TgaatFtiPlTaH0U FRaINRhbDNyaVcV2tEhfU+Ytxbz+89wqoTcz77RbJfSmRZPzBi6mK6+8sktPSAK+umazdEIvAgLd RvHwQRjI1woVektRrx8IDmECb+K4WITcpOi+JaE33yOv9PUhIKG3PvQsGXOOUrgW+nigxBHN5XpI Pjwk8QpEAGWEbi/Csc0bH38IucA2riH+Kz5f/BlIC0EYQQ+vyKjh2bDBBhu41XRTowulNy+ishwn tPLgRPm+axtCISEYvHeDLweB74033nAPw8TJy8d4cUToxj777LOkd4QvI9xGxDQGr8FTM2yIxYjP GA//PJhHrdKF3rgXaEINeA9bXojxDAl3jYURwi3nHYZwHj7/wi/w5MWrKmqEhKBbJIYYz/mG8WGA Y4fhmeU9bt2K0J+wUMxHCLyRvYXrx0uLDw9xlsuLPR8k/G8yjhW/IT54YLSb9BjhVPzLXKb9CIsx EnodOv2JENj0Pwuc8MBqxNqwIUg4ATcyJQ1CbTg1aZNGOTV5/LpwWazzdY2bEogGf5dHr+fUUNNC XvS5P/ERCWtIoTff6zjtCV+H8xV6Bw8enAxdxUc9hN/o/Zs68jXCPuDdS1gi/4HNl9GQ9wNfRymn EnrjaYeF3rgUOEsQRiHsHe/T8dxCqA+MXl7+GdlvRzDmuRJDX+A37Y31bMd4fuK5NO693qdnWp/6 JPSGSaafb8xCb7rrP8+hEnrTH/OMWyT0ZsST80Y/iABfVwlm7gWIdAWkE3o5Hoi8xHvkph3t/puu PL++UKG3FPXifUy3Z0I74LUbNbqAIPJw45DQG6Wj5YYkIKG3fnTDHr2+JLp2e08Avy7dlBcV4tQi DNFDAsE0zniAQUjG44c4qFxHvXkRmGtI3IckBslC2OLaipcC3b28eRGVdXSl94NU+u1M6WLpw+pE hWKfDoGOj2a8wBVy/cZ7CZGXl8J9993XF+umvo0s4AHshctwIgRvBqzh6zcxf72HaThNKeaL/aBZ nxds9jcswuIJHsdl6623NrxgsUxCb9wLPnlgz3HHM4b7Nh4vnE/hl21EXkTSOOOlibBGGJ7afCTx lm3/fbpwXek8ev1HXfLgYeY/Uvsy+A0y+A9GGJPnn3/ezTOgLL8hLDo2gFtZ80dCb5iG5uMI9BuE R29IpHXybVTGDef026LTuDSs82UjC9edHz+l2t48UUJvmF5DzOcr9OLtSo8GH9qNeygCprfwtcWL 9n4bU+47/t0rbjC2XK6j6a7jlJ8tf6bt4etu+AMa5eZjOBbRK4TeEz58A93aCxV6w+3K536QT5uL lVZCbzzJbEIvvwXvRBAtgecEBiXE8MwNh3hiHb8HzjmMD9jh51KcGhgQ3hsfz/mNrrnmmimhR/x2 pvWpT0JvmGT6+WI/f6evKfOWYl7/uU5J6M3MO+1WCb1p0eS1ge6PXEh5ScIjjO6P4RhL0cLSCb2I nd27d3eB+XnR44UvHytU6C1FvewPA6whRPgbS3jf8MLznkoSesNkNN/QBCT01o9wWOjt1q2bExop kW7f/jedqYYnn3zSeQvigYUIG/W2DOcl7ALXD64R/PdGFzU8KnkBpGt9uMsn6/DC5cUxrk1eROUB Nd0gmPS0IJYpHguU418off1MefD1IjXd76Ox0BD/+MiFeEY3SwZBiRutmI9ixCkPm28j3f7xBkpn ePQiGiJ4I1ovDCv2g2amF2j2L9v2Ugi9tIOPCIRhwLimsEwsObyvMT587LTTTm4++oc0pMV4meLl zVu2/fPpchF6CR3CQIe5GM8TsMPCI8ojBBPeJM7CYow8euMIad2GF9d69HoaXKPTeeDGrw8Gb/Ma ri8kzTRa9vggdMM7/5DQmwZX0Vbn+6L/008/uYFPaQChc3wIB9+g8LWFYxq1Ygi9lBl3HWd9tutw pu3h6+6ll15q3ONzNYRvPhLy38cojeYtVOgNtytaZnQ5fD+IbivFsoTeeMphoZcxLnj242P/E088 4TLwzEp4RtZHjRBTXsiNbosu4wARDpnGbxCnAxwrwkb4FZ5zeBeIWn3qk9AbpRm/XOzn7/hasq8t 5vWf65SE3uzMY1NI6I3FUtBKwjYQF5CL31prreVECE503wWU9TzIwBzvM2LV0D0zHCuSivFU46WK h1s8fBjghFHfMcrgosxgQHiXhUe/ZnuhQi95G7recPdZHnLogsrDHGIHnnZ4C/E1kViAEno5IrJS EZDQWz/SYaGX7u+EYcDzEUOwzPZSQ0xbPxhWri3xA6OF0yOU8TJArwjf5ZzttAkPV4wYwgxeFTYv ouLV6e+J4e3MI54iojK4hB/4IpqGD35eyKNnRzjOKl44e++9d7JLfzRveJlBL6I8fBuJsea9LMN5 /Lz3KmYZ0THfXiG+nPpMi/2gmekFmnZm214qoZdzgx4pMMfLiinCv3/hyiSQksZ/JOBjMfdjb9n2 z6fLRejlt+HPcV4K08WzpkwGpuO8w8IP7YQtYTnOwmKMhN44QlrXe2BCpAseZ2ssMRMWdHnWxRsX MZfZ1GliWyJzIm/Ccze83pdddzpxarUNOVlCb10yxV0TvmZwD07nVehr5SOojxFKqKThw4f7TW4a vrYkzo+UzUXx6KXEuOs467NdhzNtD19383XioTeRj4eKAxEcNtlkE+c0w/WZd8lChd5wu/K5H8Cj 1CahN554WOjl90OsXYznRC/C8m59eBB7PxouhIF7/bM6Ya28XhFXE+/raAxRw/GA52reo7xxLecc xZs4bPWpT0JvmGT6+WI/f6evKfOWYl7/uU5J6M3MO+1W/8DPi7ms/gR4WSP+3ZgxY5KF8XWLCyQ3 4/Ao7YgK3Lzpshw1BuPh5s6LEsbI13RpQhTlR4zxEukD+7sVwZ/6CL2U0ZD1Uj7Ctu/+zFdGbioI u3yx5ibEwxve0BJ6oSUrFQEJvfUjHRZ68cjl2kRMMB+nlI84vlt6XE189KGMfIwHWv/y4/MR15zr b5s2bdyAVlx3seOPP94efPBB5/FLDPCoeRGVuL2EZYgzL/TibZzOAyIs9OJ542Odcl0j/jgvrgyU wQfBLbfc0g3AxbIPI8FXawaxO/LII10s4nA7fBszidGk557uxTm8Orh3lNqK/aCZ6QWafcu2vRRC L/d2zjuMXjl81MX40IEHF0ZIjnTPWpz/fuCz888/3y4Ierh4y7Z/Pl0uQi/lei977veZfpe+XKbE 5yVOL8Y9+tBDD3Xz0T9hMUZCb5SOliGwzgAvzqbnceneQczI1ars0her7dFh6dP5LfsEYwT9a/sq e/3bajs9MQ6i31RnitD7/qkSeuuAKfKKfF706SJO6ICvv/7atQIHFxxAwha+tsQJvfRM9Pf8QkM3 pLuO045s1+FM27mmDxgwwO0O7zr+Whrev7h5Ptx6L0pCBPKOGb6n8zGO981Chd5C7wdxbW3odRJ6 4wmnE3p5DmMQYz/ILD3WvCOCL4lY1e+++65b5PmXDyyFGj3dGJvC92pC7OV5JzywfH3qk9Cb25Ep 9vN3brXWTVXM6z/XKQm9dRnntEZCb06Y8krEgwJiJl0aeNknjhIvPAgExPDlAQSPHbx+MxliAqOF I0zQLZkfL8IowjAXa7zDukW6RtRX6KU9DVUvZfMwx6Bs3Hz4CsiLMYOzEbeQhx/+S+iFlKyUBCT0 1o92VOjFo4CHPq5TTDFCH4QHmArXyABr9HLgBQZxslAjNALeujzYImJxneXlj3XTp083PIf9gFLh OryI2lBCL/cBXtIwHsrjBkljG/cGvCsyCb3ZYh/Lo/ebOh7bpRB6uU8j5mNM/QAnxAPG+xyL68Hj NgR/9t9//2S4Bjzb6NXjLZOA4NMwDQu9hILgw0HUOP+oC+OjQdyHj2gelhEpECswPqbQgylqdLXm ZdL/hiX0RglpGQJrXpjwvEWsC7QA57HLeua9fXxulTVrkli66Llqe+Qjv4VEqULxfr3Nzt05kXle EP43LCSHy/SewZOnmn3wzzF1BtP0NTT2aWN80Q8LmoQ84v0gLBBxTMJCL9caL+qyjXOJ9wfvSFKo 0JvuOk4d2a7DmbbzAZnnEQzvSj4ERvfPbYz88WH+WM2Hc+Kkhi1XobfY94NwG0o1L6E3nnQ6oZfU vhexz0mvt3AvHp438bLFGCQQr+76GO/4999/v40ePdoVwzMI7/je6lNfWOhF/1hppZV8sQt1ij6D voODSzlYJV7/Occl9BZ4dknoLRCcsomACFQMAQm99TuUcUIvJfKQiWcvHid48CMO0QUnarwEec9C RDkeOAs1P2jaZpttZsT+9V6+LVu2dN5CcS9XDS308uCLtybeuzwU4ukQNR7O2G9i9mYSehWjt66Q m+kFG87FFHrx7Ca0RtR48SA2NMb57MVUBs3hAy/CBOcgvwnftdKXwTo+RiCM8rHj+++/TxkQMNv+ +XLw1MXzAeN3wMeVqNEOXrxGjhzpNnFuUn4248O19waiazMvbIgM3iiPlzpClniT0OtJaBomsEbi e4Fb5cXeROgFViVE4CP6VdtpgYeutwHPVttDHyaWE3mqnLi3/wZmF+xam+7yl6vt9ncQjWvT+jL8 usmBR++wf0no9VwaapqLRxfXCD4g8aEXkQjj45j3Yg23jQ9TfsDMYcOGuR46fjsewFdffbVfdB9N vaeiXxm+juZ7HaeMcH6uf9EQUJm286EZgc1/+Ma5hR4e/pz0bYxOGVuAAVqxaPgL7i0MpknZOM0Q Nsj3DiJ9Q94PKL/UJqE3nngmoZcchFry92XGlsDZgZ7GGM+bOF5x7mBRYdatTPPHX4ejm8MhI3hm 4OOvt/rUx+8Zj2CMsX64HpSDSeiNPwrFvP7z3CqhN55z1rUSerMiUgIREIEKJyCht34HOJ3QS6kM SsbATePHj3cvIbzERT0NeWHhYZAXvegga/m2jNAHeOYiLPNwi8DKIGnE6KXuOGtooZd68bbkZQxB LO7l7tFHH012688k9NJ+Htw33HDDOrsCvw022MDFEM60v3UyFnlFsT0KMr1A0/Rs24sp9FIfg6UR r5lzduLEic7blZ4qGCIqcfE4/7whYpx55pluEY8sPHY5foQs4uUVT99Ro0a57Xidn3rqqT6rm2bb P5847DW23HLL2a233pr8Lfg0TPHg8TGr8UKhPj60EFOacwjPMV7WePkjrArGSx2DHfrBgNgPBlfl hZEXMGIK+y6bLkPwR0KvJ6FpmMAq5yQGXmNd0jcXd9uQcY08MXiPP36LxEo2nxaEZHj6k9p0u61T Zf8JQjw0qdF5b3oz6DnySrC9RuRlNandNFT+1OnBx5/TJfQmyDbc3/CLPnFpES0xhEmuMYRpeP/9 91MGF8Url/tl3D2SEEy+JwFlnXjiia4srntDhgxxH9K492DZPHpJk+91PNt1ONt2PjqHPSb5CH7a aae5kBXcR2Bx77332mWXXZYUx8I9PfBoRrwlJBTjtBASi5CA3rgOs9/eGvJ+4Oso5VRCbzztbEIv vwl+U17M5fzhPPS/MT4s+4/UPLfwbEIIBz46c9/n3ORjNOVsvPHGrhGEXOQjMc9A9DKmt7F/dmAs Ap5tKJ+P4uFQI2QupD7ycb3wA9vy3IG3e/cgTJbfD9IsDJPQG0+92Nd/Cb3xnLOuldCbFZESiIAI VDgBCb31O8CZhF5KxiOFLmO8lDAYBA+I0a/xdG8n/hweBzzM8cU+nSEM49nKwCRxxoBldP1EMOUB lwdQHobThUxoaKH3tddecy+VtJV93HzzzVOajUAGDy/2ZRN6eRDnYTq6/wxAd9ZZZ7myM+1vSuUN sFDJQi/nL14pGHHzw3H36XLMcenTp08KVXjgye5fUtiI5xUvVeE4+4ivHLfocc0mIPjKEFAQmhn4 zxsvWcS+jHq3IRhcdNFF7oXMp2V/aA8CLYZX/JtvBupZjeFNx0eb8D77bUz5mEEaP4iShN4wHc17 Aj3PDoTe4J+XbBOCbFKSDZLVSLTBqn/tUGVHb5bIuSBY/ud/gw8Vn1bb7mtX2eX71oq8g98y+89L vgxfU6gehF4nAFfbtOlV9ukZfyh0g8fUQNPwi362KhCfuH/tuOOOaZN+9dVXbhyS8DXTJ+Y6Rw8e HyIpm9BbyHU823U423baysC0fMxDQEtniNaEaMLw4iWeP88wUeNZCeGN5wuM+wYxUXkewxr6fuAq KeEfCb3xsLMJveQinBLp/HnHMyjPyd54PuC/3856PgJz3vlzjw/BnOMYjhu33Xabm+cPzzIIrgi8 3nhO5dyNs3zrowx+99TpBWvW0UuKd4GDDz6YxYViEnrjsRf7+i+hN55z1rUSerMiUgIREIEKJyCh t34HOJvQS+l42u65557u5YMXFO493juA7YidW2yxhRu5l+14AiAOd+vWjc1uO56ZdCHnP57CdCGP M2Kb+3iibKeLOV6W4W6N4XwNLfQSOxgPJOK1L7nkkk5gQ0Tj4ZiXFwQ39p/YfcQ2yyT0du3a1YXC gB2iLiMl89CNeM7gdDxow9F7aIT3k3k8PYlbzAsxXsQNYcUWehl4Dy9YDG+QaGy2bNvx7PajRcMW T9eo4QXOQCIY3iocC2/hF3hGl8bjCtHWC6KcV4i7tBEPk3SGkEGsWz5UhI0XKM6BdDGss+1fuCy6 NFPOl19+mVyNJxi/v6jhQcbAgHjp+n0hDSFGEIf5/TGYXNj4DRJrkt+fN9qPhxCDzsHhww8/dOc2 gni635zPq+miR6Bbwrk9zY57sdZPzU7fodqO3RzxNxjnIVj90IdmBwQhG8KevJe+GC2uNj9b0Hi9 1jst8Oj9/EwJvVFixV5GtKX3SZwRvoZ7Fx+m+E9Mct+dPC69X/fYY485MZNrNIZgi6hLrwm8EHl2 QKzaZJNN3L3V52Na3+t4tutwtu2+Lc8++6wRaiI6qCvXUTwkeX4Jx+Ll3o73st9nnhsQggn9QFgg elowCC4Gy/C1v6HvB36fSjGV0BtPmWdpPG4x7v3hkErhHIwbwP0b4xzCuYLYst549vSDqXlxl238 xhBTCRPixWGeIfnAwHMrz59hgZjnB55P/TOXLz86zac+n5d3teeee87GjRvnV7n9TffslEzUgDMS euPhFvv6L6E3nnPWtRJ6syJSAhEQgQonIKG3fgc4F6GXGoivhWcjwicPg3i3IkJ5ozsnL0vEv8tk PKT+/PPPaV8MefhEqPLi1UknnZQi/EbLbmihl/oQp+mWGueNhFcCMQN5cUN8yyT0IkjykodHZpzx 8owISVe6OGuMQm/cfpRyXVgg8LEZ8WpFIOWFCBGf8zlX4/ykHM5jztO4uNG5lhWXDrEfQZwwIQjW xIbM1D5+j3jLIST07NnTfVzJ1h2SuNvk4cNDeHCXuPZonQiECSx/emLJi6/hbXHr2H7eLmZHbRpO mZi/LQjZeOEzqevTlUEqtgWO7/bl2RJ6U6k1niWuvYiZeKzy/JDp2hbeq2Jfx8NlFzLP9Zb94FqL wJvuwzVlI6yRlliVCNrhewYim/+Qx70IYS5spbgfhOtrqHkJvQ1FNrVcnpsRb/md8fyQ6bwkJ8+0 ODEwxbOe9Dzb5Gr51sf5zm+HQZf5sINYHT3nc627GOkk9BaDYvYyJPRmZxSbQkJvLBatFAERWIQI SOit38HOVeilFka1ppsV3n68rCBKInZ546EPT1PW431AfDAeGvGExVuF7kAM8EA3+UzGS533JkI8 xRshnZVC6KVuurRfccUV9t5777mXVPZp0003dfFRiXPGF/BchF5i7+F5gYco3qq8BNL1da+99nKe Pzz8pjMJvenIpF8fJxCkT60tIiACmQgs+6+Ed22mNOFtiLPYoL3MDtkoMc/fe94zOzMY/9B76oan takSc2Hxd8aMavvmXMXojTKq9GVdxxv3EZbQ27iPX6W2XkJvVLfWXwAAQABJREFUaY6shN4COUvo LRCcsomACFQMAQm9FXMokzvCwC0PPvig8/jxXfKTGxvhTC5idLnsVrFDNyzs/ZJAsLCPgOqvJAJL /TPwrGWH+BNEWEgGWQiW04m1NVqvDdjd7IhgvKm7hgRevk8nQjkky6I4CgtZWOBlNWmD72L23Xny 6A1hWiRmdR1v3IdZQm/jPn6V2noJvaU5shJ6C+QsobdAcMomAiJQMQQk9FbMoXQ7QpdOupMzvfLK K13IhMa+hxJ6F94RlECw8Nir5soj0OXUmn1KKryRffTr/dRv9st+6teHp5m21aSbFQi9358voTeM bVGY13W8cR9lCb2N+/hVausl9JbmyEroLZCzhN4CwSmbCIhAxRCQ0Fsxh9LtCCENGKisTZs29vXX X6eN5duY9roxCb3EaiPesh8cpzFxjmsroUYYEAeLGwwuLo/WiYAIxBNY4uRaL1502ajhdRvWa9PN +3x+uy/Le/h672DvNezSB4la2Tz75KwJ1rx5c19ERU399ZfBkFq3bl1R+1afndF1vD70Fm5eHxOf GPLl8rsl9jGxYhlYsFmzZgsXkGpfKAQINcegcsQJLpeBZyv1+i+ht8BTXEJvgeCUTQREoGIISOht /IeSh24ecIYMGeJGE548ebIde+yxNnDgwMa/c8EeNCahlwHKfvnlFzdQFy9Bjd0Y/MOPQl0uD/ON nanav+gS6PSPZNSGJAQnztYsecE2uTGY8eJveF26+bi0ft2C+WbrLzXFHj12bl4DBqWrqxzXV9r1 t1iMdR0vFsnSl4OY9vvvv1u3bt3K5nfL+TRp0iTnSNC+ffvSQ1GNC50AA8Lxn/FGsg1gW6rGVur1 X0JvgWeQhN4CwSmbCIhAxRCQ0Nv4DyUvAFOmTEnuyFJLLWXvvvuu+9KeXNmIZxqT0AtmflMMuMco 4DIREAER8AQ6nOTnaqaZlF0U2qiRPro+vM7PR8sN8syba3bKxmPs1J1aREutqGVdfyvqcC7yO8Og sy1atLCll166rFhMmzbNcDIot3aVFaQKbgzXWT7+t2vXrqz2shKv/xJ6CzzFJPQWCK7I2ehixY2M wYMOOOCAvEqvT968Kipx4m222cZee+01u+666+zvf/97SWtfmHWXdEdVmSPATZGvseGvsoV8nY3m 4Yt/nPEFGKO7D3bLLbe46b777uum9f0Tva5PnDixvkWWfX4v9C6xxBLWr18/O//8861Hjx5l3+5c G9jYhF7O8VGjRtmyyy5rK6ywQq67qXQiIAIVTqDdCamhGQrdXa/nhvPHrWM766sXBELvHLO3Txpt qyxb2SENdP0NnxWab8wERowYkXyWKDfPWQae5bdGu3h/kC06BPDm9se+ZcuWZbXjlXj9l9Bb4CkW FQQKLEbZIgSefPJJ23PPPd3abbfd1l5++eVIitTF+oi19cmb2oryWmoosfWOO+4wHhx22203W2+9 9WJ3uqHqjq1MKxc6AQm9C/0QqAEVRgAvlzFjxhghNBB7V1xxxQrbQ+2OCIhAIQTa5PndPvgGa2m+ maZUH03nl5kSsmH+PLMb9vjV9tywbdnEU0zZgSIu6PpbRJgqaqERYKArPhh37NjR6KVVbqGT6CbP oL8IvhJ7F9ppUvKKvciLwNu2bduyCSfiQVTi9V9Crz+6eU4l9OYJLMfkiLyIvViTJk2Mm9Vyyy2X Nnd9xNr65E3boDLY8Le//c3F2zz33HPtoIMOKlqLNtlkE9el+9Zbb7UjjzwyttyGqju2Mq1c6AQk 9C70Q6AGVCCBWbNm2dixY10cO7q2Lbnkkta5c2cNEFSBx1q7JAK5EmhdI/Qi3iLCYn4+F0GX9GER l+U4oyy8ePmP0Hv97j/Z7r1bW6tWreKSV9y6uOsvPV4YpFQmAuVKYMaMGTZ+/Hj37EBoBDxleXYo 198tY0PQZn5vDBTHsw6/sXIZNK5cj3Nja5c/zpyTzHM+lvNxrrTrv4TeAn8xEnoLBJchGzeorl27 GqMxrrXWWi4kwyWXXGJnnHFG2lz1EWvrkzdtgyp4Qy5CbwXvvnYthoCE3hgoWiUC9SSAtwueLsRO xgOCB2QePvE2SBfWpJ5VKrsIiECZE9jr6T3q3UIv9GYqqGPLObbKElOt34rTbNe15thqy7c1PLBw vlgUTNffReEoV9Y+Ev4Mr11ENARTRN4OHTqU9e+WZxne93nW4fmGsQlYZr2ecyrj/OS85H+zZs1c rGjOT+4lLEdD9pXLHlfa9V9Cb4FnloTeAsFlyEZM2RNPPNE222wzO+aYY+zAAw+01VZbzb7++uu0 ueoj1tYnb9oGVfAGCb0VfHAL3DUJvQWCUzYRyEKAh028H3j54UWIedbpBSgLOG0WAREomIAXjPCq YxAn/jO/qIi8Hpyuv56Epo2BAL9bfqP8VhHSGsvvlucZPmCH/+sZpzGccbm30d9T+BDh/5eryOv3 qpKu/xJ6/VHNcyqhN09gOSTv3bu3DRs2zG677TYn8jIaJx5N77//vm244YaxJYTF2h122MEuuugi e+KJJ2z06NGuy8ruu+9uF1xwgdHtKmrFyrvjjjvaxRdf7Oolhi2hJn744YeU6j7++GO75ppr7I03 3nCjqtNtgTi3xx13nO21114paUeOHOniMnKz+/zzz61Xr14p2/0CL/90y4HRU0895WLnsi1TnFxi Pz799NP27LPP2jfffONiOHHB7datm+266652yimnuC7Cvg6m9913nx1yyCHhVSnzq666qiuLlZnq 9pkefvhhd4xhQuBz4kdtscUW9s9//tN5cvt04Wn4WBEjGN6UAyu+XG+//fbu2McNXoRActNNN9lD Dz1kX331lesqxGBenF+I1wcffLBttNFG4eo0nyMBCb05glIyESiQgH8B4n7gX4D8tMAilU0EREAE 6hDwL99M+e9fyuskXIRW6Pq7CB3sRrqrlfC79R+xw885jfRwqNkRAv5+wrSxfTCshOu/hN7ICZnr ooTeXEnllu7LL790gmbr1q2dEEqXE+LA3n777U4MveGGG2IL8gLgjTfe6ITUb7/91gV254KCAIot v/zy9vbbb9cZ1KYYea+//npX7/fff58MLE4sxZ9++inZ3v/85z8u/AQ3MNqF6EwQ+pkzZ7o0iL3R /cOrmTafddZZNnDgwGRZ4RkEbUTixRZbzDHjCy6WSWzFU3rw4MEuHW1B8GTQH7rLYLBCjO7Ro4db 5g/1nHDCCfbnn3867zLqC8cqW2mllVwe0maqG8EVUfWRRx4hqfvyzEABhOyADS8Vt9xyixHnN2r+ WNF2jvWnn37quifxcECMJ2yZZZZxHwoQcL1xkd5uu+3sf//7n1tFHewz3YQQmbHDDjvM7rrrLjev P/kRkNCbHy+lFgEREAEREAEREAEREAEREAEREIGGJCCht0C6EnoLBJcm27/+9S+77LLL7IADDrAH H3zQpXrrrbds8803d8Lc77//7rqiRLN7ARDPVrqsINghNmJvvvmmE/EY0G3jjTd2winiprdi5EU0 RPjEC5m2Uv4nn3xilI3df//9TtzkK9bpp5+e9JhFWOUc6t+/v4u/GB3g7Oabb7Zjjz3WunfvniIa +7Yz3W+//VwZRx11lBNI/bZMYiuMiY2DFzJl08UHMfS9996zU0891XlP4137+uuv++KS01xCN2Sq +5xzznGiNWLr5ZdfbkcffbQbXIiRYQnZ8fjjjzux991337U+ffok62XGHytEdP7Di2OKQPzqq686 D3AEY5ghBHt74IEH3IB0xKziowGD/XGeYHhfc3wQfS+88EKfRdM8CEjozQOWkoqACIiACIiACIiA CIiACIiACIhAAxOQ0FsgYAm9BYKLyYbQiCcpYu7zzz/vREiSIeL17NnTfv75Z3v00Udt7733rpPb C4AIqR988IGtv/76KWkIfUCIBITVF154wQjv4K0YeQksTh14tUaN0AorrriiES7htNNOMzx7o3bH HXfY//3f/7n9Zz8RQTE/MB1esEOHDq0TWoDBeRC38QpGlEWc9ZZJbPVp4qYTJ040wjDguUuIg9VX Xz0lWX2E3gkTJriQFrR30KBBTvQOF845gHBLmI5tt93WXn755fDmpNCL1zIhJxCpw3bttdfaSSed 5ERg2u8NAZnYz3gkk0ZWXAISeovLU6WJgAiIgAiIgAiIgAiIgAiIgAiIQH0ISOgtkJ6E3gLBxWRD gN1pp51czNTffvstKXaS9Pzzz7cBAwa4+LHElo2aF2sRcCknzvbYYw8XwxZBFc9bb8XIu//++7vY r77M8JS4udRNOAqEW6ZRI/QAIQcQg6OxiHfZZRd77rnnnLcr8X3D5uPmLrvsss4zNRz3plChl/I9 K7xfoyEU6iP03nvvvXbooYe6sBrsaxyLZ555xsUZxisaXnhKe/PH6vDDD7c777zTr05O8druFsQZ xigfERzzXsT77LOP8352K/WnaAQk9BYNpQoSAREQAREQAREQAREQAREQAREQgXoTkNBbIEIJvQWC i8lGuAYG1mIgsCuuuCIlxY8//ui8ZQk3wABrXbp0SdnuBcBLLrnExcFN2VizcNVVV7my1113XRs+ fHgySTHyXn311c6TNFloaIZQDXjxEm+XMBLpbMstt3QxbqPhG3zYAWLORgXwnXfe2Xk/E26BMAhh yyb0ElqC8AbvvPOOE4mJFxw1BrVDJA1bfYTek08+2WAV563r6yBmLjF78eR+7bXXbKuttvKbkh69 V155pVFW1PB8JgwFefH4xTMZYx833XRTN8/AfMQIxvuZ8A+y+hOQ0Ft/hipBBERABERABERABERA BERABERABIpFQEJvgSQl9BYILpKNgcAQMomTigC59tprR1KYE+oQ7OJEVS/W3n333c5jtE7mYAUi MmLycsstZyNHjkwmKUZePGsPOuigZJnhGQb5uueee8KrMs5HQxogwC611FJu4LZXXnklGXs4HNZh 2LBhLjRFuOBMQi+DnTH4G6ESMOLVdurUKRn/mPANDG52xhlnGOJ52Ooj9CKwEg83nUeur4e2cE48 9NBDhre0N3+siN/MsYwzPgawX4TS6NWrVzLJv//9bxeD1w84x4Y11ljDEMt9HORkYs3kRUBCb164 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 BEiABEiABOIfAYpewzXTsg9RnSzmBLToDaSHpk2bCnLL6hKs6EU/P//8s4wdO1blk4W0guhE3tqK FSsqYVukSBH9OPUKKbxw4UKZMmWK7NixQ6VdyJw5s5QvX15F7drrWxtDFENUI2fvwYMHJU2aNFKm TBmVBiJr1qySLVs2VT2mRC8ehnQSyMWL9A2HDx9WY0JeXaSmgIB+4oknBEIb9XTZtWuXIB/xDz/8 IIj+RQT03bt3JVeuXFKuXDnp0qWLSkWh6/PVvQQoet27tpwZCZAACZAACZAACZAACZAACZBA/CNA 0Wu4ZhS9huDYLN4QmDdvnopghlCH1GYhATsBil47EZ6TAAmQAAmQAAmQAAmQAAmQAAmQQOwRoOg1 ZE/RawiOzeIFAWyqVrJkSdm2bZv06NFDhg0bFi/GzUHGLAGK3pjlzaeRAAmQAAmQAAmQAAmQAAmQ AAmQgC8CFL2+6Pi4R9HrAw5vxQsCyMXbr18/adKkiSDlhM7Bi7zHvXr1ku+//17lEd69e7dno7p4 MTEOMsYIUPTGGGo+iARIgARIgARIgARIgARIgARIgAT8EqDo9YvIuQJFrzMXXo0/BCDpdF5gjBqb 4V2/fl0uX76sJoHcvMjdi03wWEjAiQBFrxMVXiMBEiABEiABEiABEiABEiABEiCB2CFA0WvInaLX EBybxRkCN2/elAkTJsiyZcskLCxMzpw5I9hsDpvRYXO5rl27clO1OLNacXMgFL1xc104KhIgARIg ARIgARIgARIgARIggYRJgKLXcN0peg3BsRkJkIBrCFD0umYpORESIAESIAESIAESIAESIAESIAEX EKDoNVxEil5DcGxGAiTgGgIUva5ZSk6EBEiABEiABEiABEiABEiABEjABQQoeg0XkaLXEBybkQAJ uIYARa9rlpITIQESIAESIAESIAESIAESIAEScAEBil7DRaToNQTHZiRAAq4hQNHrmqXkREiABEiA BEiABEiABEiABEiABFxAgKLXcBEpeg3BsRkJkIBrCFD0umYpORESIAESIAESIAESIAESIAESIAEX EKDoNVxEil5DcGxGAiTgGgIUva5ZSk6EBEiABEiABEiABEiABEiABEjABQQoeg0XkaLXEBybkQAJ uIYARa9rlpITIQESIAESIAESIAESIAESIAEScAEBil7DRaToNQTno9m1a9dk1qxZsnz5ctmxY4ec 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 BYFLZCtC9O69997msssucyVB8EIqEhzit99+c/u6dOniyNXFF188UZtx+rYQvRdddJEjYceNG2dm mWUWM/XUUztyePz48S4PZGXPnj3N008/7bZnnHFGl+7LL790JO+NN95oNttsM3csjeg988wzzVFH HWVKpZIjoeeaay7zww8/GO/hB9k7dOjQFu0rt4P+nnzyyY5Epb7pp5/ezDPPPFHyyy+/3PTu3bsm ordIm4m6vPHGG5vHH3/ctWWaaaZx5+Onn34y33//vdu36667mmuuuSZqq1baDwIieuPnUveFOB7a EgJCQAgIASEgBISAEBACQkAICIHWRUBEb0G89UJfELhEtiJE71lnneWCkeGRu9hii5kZZpjBQDgi ZXDooYeaF154wXTv3t088cQTidr+j+iFHO7UqZO54oorzAYbbODI2Ndee80RwWQ6+OCDHRGMFy4k 6/bbb+/qxON34MCBZuzYseaTTz5x5SeJXkhg+gV5fOSRR0YexhDRXDd77rmnmTx5shk2bJiTYWjR yIwdtJf6y0k3ZMkzZB0r2mavGfynP/3JICux5ZZbmummm871AC9pyoX0PfHEEzN6pUNtFQERvfEz p/tCHA9tCQEhIASEgBAQAkJACAgBISAEhEDrIiCityDeeqEvCFwiWxGiN1FEbBPSdZllljGTJk1y MgLLLbdc7LiXbsBD95///KdZcsklY8fZ+OKLL0znzp0N0g3XXnut2WWXXWJp8MwlGNoHH3zg9odE 788//2wWWWQRg7wEUgt4ySbtqquuMv379zd4HiMJgRdsXmsE0VtLmw888EBz4YUXmgMOOMBccMEF ebuhdO0EARG98ROp+0IcD20JASEgBISAEBACQkAICAEhIASEQOsiIKK3IN56oS8IXCJbvYleiu/b t68ZMWKE8zDdY489YjV6one77bZzmrKxg//dQGZg9913dxq8//rXv5xnbjIdXsVHHHGE2x0SvdRL /TPNNJNB5oFl0v744w+z4IILOjIY7+M11lgjmaTsdiOI3lrafMwxx5hTTz3V6QP730TZxutAu0NA RG/8lPrfAF77MiEgBISAEBACQkAICAEhIASEgBAQAq2NgIjegojrhb4gcIlsRYleZBYuvvhiM2rU KBdIDS/bpKFpCxEZmid6zzvvPHPQQQeFh6J1L9tAcDN/nqOD/11BJmKttdZyWyHRi1QDXrzrr7++ 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 z6mlDuUVAkJACAgBISAEhIAQEAJCQAi0JgIieguiXc0LfcEqOkS2ckQvgce6devmMJh33nnNxx9/ bKaddtoIE0/IJoleH4wNCYaPPvoo1VM2KxjboosuGnnlQsAmDWKmf//+bnclotfn/eGHH8xcc81l 8ExDixdSAeMaog6kKf71r3/F+ufzaikEmhkBEb3xs5PnvkCART7wEMDxp59+iheQsnXllVeaPfbY I+VI+9oFLuirgwtjayWrBy4ieiuhrONCQAgIASEgBISAEBACQkAItDUERPQWPGN5XugLFt2hspUj egHh+OOPN5CkXbt2dQHZQmDKEb1fffWV6dy5syNQTjrpJHPssceG2QxetnjqPv/88+Zvf/ubeeSR R2LH+/TpY+69914nBwFpHBqexauttprBqxcLiV50eUMiOszHMdpLXx5++GEXKI7jP/74o9Pt/fzz z82pp55q/vGPf4TZtC4Emh4BEb3xU1TpvkAAyN69e5sHH3zQZWTMYPYCYxIzBSB+x48f78an+++/ 34019SA0460sv/XEE0+Yf/7zn2aaaaZx7Sqfsr5H0nDZf//9HS4rrbRSDJf77rvPtbEeuIjore95 VGlCQAgIASEgBISAEBACQkAITHkERPQWPAeVXugLFtvhsmURvVlglCN6yYNHGMQpJMqQIUPMnnvu 6aZE4xV80EEHmdtvv90RGaNGjYq8hn1d1157rSGQG3kvvPBC50mHbibTidHHfe655wzawVhI9CI9 QZtYrrnmmgbdXYw60RiGNJ511lndNktv6AjvtNNOTpdz3333NUhPMC0Zg/x47733zEMPPeSCtr34 4os+m5ZCoCkQENEbPw2V7gs33nhjpCm+wAILOMmW9dZbL15IsMX4gXwNsxpaw/j49dhjj5mll17a IC3RWhbisuCCCzpc0qRzfHs+/PBDM8MMM7jZEH5fkaWI3iKoKY8QEAJCQAgIASEgBISAEBACzYyA iN6CZ6fSC33BYjtctkYQvXjeQp76cwRRiy7uF1984chTvNUuv/zy1OnQePz26NHDaetyMiBZIGbx FKYMpBu23nprd55Cohe9SDzNsKmnntrMOeecLqicD8ZGOTfffHOU1yX87z+CAB188MEGz19sttlm MzPNNJP55ptvnNwD+yCe6ZdMCDQTAiJ642fDjzl8XEra5MmTzTLLLGM++eQTd+jxxx93Y00yXbXb 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 +qADfG3Jbl62X36