首页 \ 问答 \ 在Z3 Python中具有函数作为属性的数据类型(Datatypes with functions as attributes in Z3 Python)

在Z3 Python中具有函数作为属性的数据类型(Datatypes with functions as attributes in Z3 Python)

我正在使用Z3的Python绑定,并尝试创建属性为函数的Z3数据类型。 例如,我可能会执行以下操作:

Foo = Datatype('Foo')
Foo.declare('foo', [('my_function', Function('f', IntSort(), BoolSort()))])
Foo.create()

这是尝试使用属性my_function创建数据类型Foo ,在那里我可以调用my_function x (如果xFoo类型的变量),以便从int到bool获得一些函数。

但是,我在第二行遇到以下错误:

z3types.Z3Exception: Valid list of accessors expected. An accessor is a pair of the form (String, Datatype|Sort)

是否可以使用函数作为属性声明Z3数据类型,可能使用不同的语法?

或者是不允许的事情? z3中的post 函数声明向我建议Z3中不允许使用高阶函数,因此可能不允许向数据类型添加函数,以防止使用这些数据类型创建高阶函数。


I am using the Python bindings for Z3, and trying to create a Z3 datatype whose attributes are functions. For example, I might execute the following:

Foo = Datatype('Foo')
Foo.declare('foo', [('my_function', Function('f', IntSort(), BoolSort()))])
Foo.create()

This is an attempt to create a datatype Foo with attribute my_function, where I would be able to call my_function x (if x is a variable of type Foo) in order to get out some function from ints to bools.

However, I run into the following error at the second line:

z3types.Z3Exception: Valid list of accessors expected. An accessor is a pair of the form (String, Datatype|Sort)

Is it possible to declare Z3 datatypes with functions as attributes, perhaps using a different syntax?

Or is it something that is not allowed? The post function declaration in z3 suggests to me that higher-order functions are not allowed in Z3, so perhaps adding a function to a datatype is disallowed so as to prevent the creation of higher-order functions using those datatypes.


原文:https://stackoverflow.com/questions/35708244
更新时间:2023-01-24 07:01

最满意答案

尝试一下。

在web.config中的系统web下

添加这一行..

  <system.web>
<httpRuntime executionTimeout="999" maxRequestLength="2097151"/>

然后你需要检查文件大小

if (AsyncFileUpload1.HasFile)
        {
            string FileName = Path.GetFileName(AsyncFileUpload1.PostedFile.FileName);
            string Extension = Path.GetExtension(AsyncFileUpload1.PostedFile.FileName);
            string FolderPath = ConfigurationManager.AppSettings["FolderPath"];
            string FilePath = Server.MapPath("~/xl/" + FileName);
            double filesize = (double)AsyncFileUpload1.FileBytes.Length;
            if (filesize < 106496)
            {
               //do something
            }
            else
            {
                Response.Write("File size must be less than 2MB.");
            }

如果您觉得它有用,请将其标记为您的答案,否则请通知我。


Try this out.

Under system web in web.config

add this line..

  <system.web>
<httpRuntime executionTimeout="999" maxRequestLength="2097151"/>

Then you need to check the file size

if (AsyncFileUpload1.HasFile)
        {
            string FileName = Path.GetFileName(AsyncFileUpload1.PostedFile.FileName);
            string Extension = Path.GetExtension(AsyncFileUpload1.PostedFile.FileName);
            string FolderPath = ConfigurationManager.AppSettings["FolderPath"];
            string FilePath = Server.MapPath("~/xl/" + FileName);
            double filesize = (double)AsyncFileUpload1.FileBytes.Length;
            if (filesize < 106496)
            {
               //do something
            }
            else
            {
                Response.Write("File size must be less than 2MB.");
            }

If you find it useful, please mark it as your answer else let me know..

相关问答

更多

相关文章

更多

最新问答

更多
  • h2元素推动其他h2和div。(h2 element pushing other h2 and div down. two divs, two headers, and they're wrapped within a parent div)
  • 创建一个功能(Create a function)
  • 我投了份简历,是电脑编程方面的学徒,面试时说要培训三个月,前面
  • PDO语句不显示获取的结果(PDOstatement not displaying fetched results)
  • Qt冻结循环的原因?(Qt freezing cause of the loop?)
  • TableView重复youtube-api结果(TableView Repeating youtube-api result)
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • SQL Server 2014版本支持的最大数据库数(Maximum number of databases supported by SQL Server 2014 editions)
  • 我如何获得DynamicJasper 3.1.2(或更高版本)的Maven仓库?(How do I get the maven repository for DynamicJasper 3.1.2 (or higher)?)
  • 以编程方式创建UITableView(Creating a UITableView Programmatically)
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何防止调用冗余函数的postgres视图(how to prevent postgres views calling redundant functions)
  • Sql Server在欧洲获取当前日期时间(Sql Server get current date time in Europe)
  • 设置kotlin扩展名(Setting a kotlin extension)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 如何在vim中启用python3?(How to enable python3 in vim?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • dedecms如何安装?
  • 在哪儿学计算机最好?
  • 学php哪个的书 最好,本人菜鸟
  • 触摸时不要突出显示表格视图行(Do not highlight table view row when touched)
  • 如何覆盖错误堆栈getter(How to override Error stack getter)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • USSD INTERFACE - > java web应用程序通信(USSD INTERFACE -> java web app communication)
  • 电脑高中毕业学习去哪里培训
  • 正则表达式验证SMTP响应(Regex to validate SMTP Responses)