麦考利的设计:代数几何和交换代数的计算系统

D. Bayer, M. Stillman
{"title":"麦考利的设计:代数几何和交换代数的计算系统","authors":"D. Bayer, M. Stillman","doi":"10.1145/32439.32471","DOIUrl":null,"url":null,"abstract":"Macaulay is a system for computing in algebraic geometry and cummutative algebra; it is capable of a variety of computations which are tedious or impossible to perform by hand. The primitive types in the system are polynomials, matrices, ideals, polynomial rings, modules, maps between rings, and complexes of modules. The system performs algebraic manipulation on objects of these types. The possible manipulations include the computation of standard (Gröbner) bases, modules of syzygies, finite free resolutions, Hilbert polynomials and functions. Using these basic operations, a variety of derived operations are possible, such as projections, ideal intersections, and the computation of coherent sheaf cohomology groups. The algorithm used for constructing standard (Gröbner) bases and syzygies is described in ([Buc76], [Zac78], [Sch80], [Bay82], [BaSt86a]).\nMacaulay is intended to provide a computational research tool for working mathematicians. Macaulay is designed primarily to aid in generating non-trivial examples in algebraic geometry and commutative algebra. Such examples help mathematicians to gain intuition, and formulate or gather evidence for conjectures. In certain cases, an example can provide a step in the proof of a theorem.\nThis system has been continuously evolving since 1977 where it was first developed at the University of Illinois by the second author. The algorithms have become substantially more sophisticated and efficient and the scope and power of the system has increased dramatically since its inception.\nMacaulay differs in a number of significant ways from other computer algebra systems. The computation of standard bases is its fundamental operation, rather than simplification and factoring. Unlike other systems which provide for the computation of standard bases, submodules of free modules can uniformly be used wherever ideals can be used. Macaulay is written in the language C and its design has been optimized for execution on small systems; Macaulay is available, and reasonably powerful, on a Macintosh microcomputer. Macaulay uses a novel encoding scheme for monomials which considerably reduces the storage requirements for polynomials, further enhancing its viability on small systems. Computations in Macaulay are interruptible, with the full power of the system available to study and use partial results. Macaulay is command-driven, and is quickly learned by mathematicians having no experience with computers.\nThe basic data types of Macaulay are highly structured, reflecting its focus on the construction of standard bases and syzygies, not the simplification of general expressions. This design allows Macaulay to outperform more general systems, within its problem domain. Macaulay is capable of many computations that are not available in more general systems. These include the computation of syzygies, finite free resolutions of modules and ideals, and coherent sheaf cohomology groups. The set of commands provided allow the user to directly compute and manipulate algebraic objects, without the need to write and debug complicated programs.\nIdeals and submodules are handled uniformly, in order to permit many of the above operations. There are tricks that permit the computation of first syzygies without use of modules, but any system which cannot uniformly handle standard basis calculations for modules in the same manner as ideals is incapable of computing higher syzygies, or cohomology groups. Surprisingly, other computer algebra systems that compute standard bases do so only for ideals.\nMacaulay (like Maple [CGGG83] is written in C for portability and efficiency. Portability is an important consideration because the availability of computer resources is constantly changing, and mathematicians are nomadic. The system has been designed to run on microcomputers as well as mainframes. Macaulay has been designed with the intention of making a given implementation capable of handling problems of as large a scale as possible. The Macintosh implementation is able to perform significant computations in a reasonable amount of time within the memory constraints available. The user does not have to purchase an unusually large amount of memory or disk space in order to run the system effectively; a 512K Macintosh is sufficient to satisfy many research mathematicians needs. The mainframe versions of Macaulay are intended as alternatives to microcomputers for specific problems which are too large for a microcomputer. For this reason, the same optimizations which make use of a microcomputer feasible, permit the solution of very large problems on a mainframe.\nIt is useful to obtain intermediate results during a complex computation: partial results often suffice to answer questions, when the full result takes unexpectedly long to compute. The Macintosh implementation of Macaulay allows the user to halt the computation at reasonable stages of the computation, to examine partial results.\nSince Macaulay is not programmable, but rather command driven, Macaulay can be easily used by algebraic geometers with little or no training in computer science. Researchers are able to learn the system relatively quickly and use it for their everyday research. There is an online tutorial system built into Macaulay which familiarizes new users with the commands in the system, by stepping them through a set of examples which are based on typical computations in algebraic geometry and commutative algebra. Following this 20 minute tutorial, users can begin making use of the system for their research.\nMacaulay consists of approximately 9,000 lines of C source code. The object code on the Macintosh is 90K bytes in length. Currently, Macaulay is implemented on the Macintosh, Sun, Vax/VMS, and Ridge. In fact, it runs on a 512K Macintosh with one disk drive. The program has been used by mathematicians in a number of countries, including Canada, France, Germany, Italy, Norway, and the USA.\nThe program is available by request from either author or by obtaining a copy from a current user. However, in the latter case, the authors should be contacted so that notices of updates can be sent to the new user.\nMacaulay is a continuously evolving system. There are two major design changes which we envision for the near future: more general base rings, and a programmable interface. Currently, all polynomials must be defined over polynomial rings with positive characteristic, and be homogeneous or quasi-homogeneous. In practice these restrictions are not serious; there are simple techniques for handling many of these problems in the current system. In the future we plan to remove these restrictions and allow more general base rings.\nWhile the command driven approach of Macaulay is easy to learn and use, a programmable interface would be more flexible. In the near future we plan to introduce such an interface.\nIn §1, we discuss our original motivation for the present design of Macaulay. In §2, we present Macaulay from the user's point of view and explain the details of a sample session, in order to give a feeling for Macaulay's user interface. In §3, we discuss those implementation details of Macaulay which are novel or important. Finally, in §4, we present some system benchmarks. Macaulay is named after F. S. Macaulay, for his seminal paper “Some properties of enumeration in the theory of modular systems.” [Mac27].","PeriodicalId":314618,"journal":{"name":"Symposium on Symbolic and Algebraic Manipulation","volume":"11 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1986-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"34","resultStr":"{\"title\":\"The design of Macaulay: a system for computing in algebraic geometry and commutative algebra\",\"authors\":\"D. Bayer, M. Stillman\",\"doi\":\"10.1145/32439.32471\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Macaulay is a system for computing in algebraic geometry and cummutative algebra; it is capable of a variety of computations which are tedious or impossible to perform by hand. The primitive types in the system are polynomials, matrices, ideals, polynomial rings, modules, maps between rings, and complexes of modules. The system performs algebraic manipulation on objects of these types. The possible manipulations include the computation of standard (Gröbner) bases, modules of syzygies, finite free resolutions, Hilbert polynomials and functions. Using these basic operations, a variety of derived operations are possible, such as projections, ideal intersections, and the computation of coherent sheaf cohomology groups. The algorithm used for constructing standard (Gröbner) bases and syzygies is described in ([Buc76], [Zac78], [Sch80], [Bay82], [BaSt86a]).\\nMacaulay is intended to provide a computational research tool for working mathematicians. Macaulay is designed primarily to aid in generating non-trivial examples in algebraic geometry and commutative algebra. Such examples help mathematicians to gain intuition, and formulate or gather evidence for conjectures. In certain cases, an example can provide a step in the proof of a theorem.\\nThis system has been continuously evolving since 1977 where it was first developed at the University of Illinois by the second author. The algorithms have become substantially more sophisticated and efficient and the scope and power of the system has increased dramatically since its inception.\\nMacaulay differs in a number of significant ways from other computer algebra systems. The computation of standard bases is its fundamental operation, rather than simplification and factoring. Unlike other systems which provide for the computation of standard bases, submodules of free modules can uniformly be used wherever ideals can be used. Macaulay is written in the language C and its design has been optimized for execution on small systems; Macaulay is available, and reasonably powerful, on a Macintosh microcomputer. Macaulay uses a novel encoding scheme for monomials which considerably reduces the storage requirements for polynomials, further enhancing its viability on small systems. Computations in Macaulay are interruptible, with the full power of the system available to study and use partial results. Macaulay is command-driven, and is quickly learned by mathematicians having no experience with computers.\\nThe basic data types of Macaulay are highly structured, reflecting its focus on the construction of standard bases and syzygies, not the simplification of general expressions. This design allows Macaulay to outperform more general systems, within its problem domain. Macaulay is capable of many computations that are not available in more general systems. These include the computation of syzygies, finite free resolutions of modules and ideals, and coherent sheaf cohomology groups. The set of commands provided allow the user to directly compute and manipulate algebraic objects, without the need to write and debug complicated programs.\\nIdeals and submodules are handled uniformly, in order to permit many of the above operations. There are tricks that permit the computation of first syzygies without use of modules, but any system which cannot uniformly handle standard basis calculations for modules in the same manner as ideals is incapable of computing higher syzygies, or cohomology groups. Surprisingly, other computer algebra systems that compute standard bases do so only for ideals.\\nMacaulay (like Maple [CGGG83] is written in C for portability and efficiency. Portability is an important consideration because the availability of computer resources is constantly changing, and mathematicians are nomadic. The system has been designed to run on microcomputers as well as mainframes. Macaulay has been designed with the intention of making a given implementation capable of handling problems of as large a scale as possible. The Macintosh implementation is able to perform significant computations in a reasonable amount of time within the memory constraints available. The user does not have to purchase an unusually large amount of memory or disk space in order to run the system effectively; a 512K Macintosh is sufficient to satisfy many research mathematicians needs. The mainframe versions of Macaulay are intended as alternatives to microcomputers for specific problems which are too large for a microcomputer. For this reason, the same optimizations which make use of a microcomputer feasible, permit the solution of very large problems on a mainframe.\\nIt is useful to obtain intermediate results during a complex computation: partial results often suffice to answer questions, when the full result takes unexpectedly long to compute. The Macintosh implementation of Macaulay allows the user to halt the computation at reasonable stages of the computation, to examine partial results.\\nSince Macaulay is not programmable, but rather command driven, Macaulay can be easily used by algebraic geometers with little or no training in computer science. Researchers are able to learn the system relatively quickly and use it for their everyday research. There is an online tutorial system built into Macaulay which familiarizes new users with the commands in the system, by stepping them through a set of examples which are based on typical computations in algebraic geometry and commutative algebra. Following this 20 minute tutorial, users can begin making use of the system for their research.\\nMacaulay consists of approximately 9,000 lines of C source code. The object code on the Macintosh is 90K bytes in length. Currently, Macaulay is implemented on the Macintosh, Sun, Vax/VMS, and Ridge. In fact, it runs on a 512K Macintosh with one disk drive. The program has been used by mathematicians in a number of countries, including Canada, France, Germany, Italy, Norway, and the USA.\\nThe program is available by request from either author or by obtaining a copy from a current user. However, in the latter case, the authors should be contacted so that notices of updates can be sent to the new user.\\nMacaulay is a continuously evolving system. There are two major design changes which we envision for the near future: more general base rings, and a programmable interface. Currently, all polynomials must be defined over polynomial rings with positive characteristic, and be homogeneous or quasi-homogeneous. In practice these restrictions are not serious; there are simple techniques for handling many of these problems in the current system. In the future we plan to remove these restrictions and allow more general base rings.\\nWhile the command driven approach of Macaulay is easy to learn and use, a programmable interface would be more flexible. In the near future we plan to introduce such an interface.\\nIn §1, we discuss our original motivation for the present design of Macaulay. In §2, we present Macaulay from the user's point of view and explain the details of a sample session, in order to give a feeling for Macaulay's user interface. In §3, we discuss those implementation details of Macaulay which are novel or important. Finally, in §4, we present some system benchmarks. Macaulay is named after F. S. Macaulay, for his seminal paper “Some properties of enumeration in the theory of modular systems.” [Mac27].\",\"PeriodicalId\":314618,\"journal\":{\"name\":\"Symposium on Symbolic and Algebraic Manipulation\",\"volume\":\"11 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1986-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"34\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Symposium on Symbolic and Algebraic Manipulation\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/32439.32471\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Symposium on Symbolic and Algebraic Manipulation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/32439.32471","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 34

摘要

麦考利是代数几何和交换代数中的一个计算系统;它能够进行各种繁琐或不可能手工执行的计算。系统中的基本类型是多项式、矩阵、理想、多项式环、模、环之间的映射和模的复合体。系统对这些类型的对象执行代数操作。可能的操作包括计算标准基(Gröbner), syzygies模块,有限自由分辨率,希尔伯特多项式和函数。利用这些基本运算,各种派生运算成为可能,如投影、理想交集和相干轴上同群的计算。用于构建标准(Gröbner)碱基和协同的算法在[[Buc76], [Zac78], [Sch80], [Bay82], [BaSt86a]中有描述。麦考利的目的是为工作中的数学家提供一种计算研究工具。麦考利的设计主要是为了帮助在代数几何和交换代数中生成非平凡的例子。这些例子帮助数学家获得直觉,并为猜想制定或收集证据。在某些情况下,一个例子可以为定理的证明提供一个步骤。该系统自1977年由第二作者在伊利诺伊大学首次开发以来一直在不断发展。算法已经变得更加复杂和高效,系统的范围和功能也从一开始就急剧增加。Macaulay与其他计算机代数系统在许多重要方面有所不同。标准基的计算是它的基本操作,而不是简化和因式分解。与其他提供标准基计算的系统不同,自由模块的子模块可以统一地用于任何可以使用理想的地方。Macaulay是用C语言编写的,它的设计针对小型系统的执行进行了优化;麦考利可以在麦金塔电脑上使用,而且功能相当强大。Macaulay使用了一种新的多项式编码方案,大大降低了多项式的存储要求,进一步提高了其在小型系统上的可行性。Macaulay中的计算是可中断的,系统的全部功率可用于研究和使用部分结果。麦考利是命令驱动型的,没有计算机经验的数学家很快就学会了。Macaulay的基本数据类型是高度结构化的,反映了它注重标准基和协同的构建,而不是一般表达式的简化。这种设计允许Macaulay在其问题域内胜过更一般的系统。Macaulay能够进行许多在一般系统中无法进行的计算。这包括合子的计算,模和理想的有限自由分辨率,以及相干轴上同调群。提供的一组命令允许用户直接计算和操作代数对象,而不需要编写和调试复杂的程序。理想和子模块是统一处理的,以便允许上述许多操作。有一些技巧允许在不使用模块的情况下计算第一次协同,但是任何不能以与理想相同的方式统一处理模块的标准基计算的系统都无法计算更高的协同或上同调群。令人惊讶的是,其他计算标准基的计算机代数系统只对理想情况进行计算。Macaulay(像Maple [CGGG83]一样)是用C语言编写的,以提高可移植性和效率。可移植性是一个重要的考虑因素,因为计算机资源的可用性是不断变化的,而数学家是漂泊不定的。这个系统被设计成既能在大型机上运行,也能在微型计算机上运行。Macaulay的设计意图是使给定的实现能够处理尽可能大规模的问题。Macintosh实现能够在可用内存限制的合理时间内执行重要的计算。用户不必为了有效地运行系统而购买大量的内存或磁盘空间;512K的麦金塔足以满足许多研究数学家的需求。麦考利的大型机版本是用来代替微型计算机来解决对于微型计算机来说太大的特定问题的。由于这个原因,使微型计算机可行的同样的优化,也允许在大型机上解决非常大的问题。在复杂的计算过程中获得中间结果是有用的:部分结果通常足以回答问题,而完整结果的计算时间却出乎意料地长。maculay的Macintosh实现允许用户在计算的合理阶段停止计算,以检查部分结果。 由于Macaulay不是可编程的,而是命令驱动的,因此即使没有受过计算机科学方面的训练,也可以很容易地使用Macaulay。研究人员能够相对较快地学习该系统,并将其用于日常研究。Macaulay内置了一个在线教程系统,通过一组基于代数几何和交换代数中典型计算的示例,让新用户熟悉系统中的命令。在这20分钟的教程之后,用户可以开始使用该系统进行他们的研究。Macaulay由大约9000行C源代码组成。麦金塔上的目标代码长度为90K字节。目前,Macaulay是在Macintosh、Sun、Vax/VMS和Ridge上实现的。实际上,它运行在512K的麦金塔电脑上,带有一个磁盘驱动器。该程序已被许多国家的数学家使用,包括加拿大、法国、德国、意大利、挪威和美国。该程序可由作者请求或从当前用户获得副本。但是,在后一种情况下,应该联系作者,以便将更新通知发送给新用户。麦考利是一个不断发展的系统。我们预计在不久的将来会有两个主要的设计变化:更通用的基环和可编程接口。目前,多项式必须定义在具有正特征的多项式环上,且多项式必须是齐次或拟齐次的。实际上,这些限制并不严重;在当前的系统中,有一些简单的技术可以处理这些问题。在未来,我们计划取消这些限制,并允许更一般的基础环。虽然Macaulay的命令驱动方法易于学习和使用,但可编程接口将更加灵活。在不久的将来,我们计划引入这样一个接口。在§1中,我们讨论了麦考利设计的最初动机。在§2中,我们从用户的角度呈现Macaulay,并解释了一个示例会话的细节,以便给Macaulay的用户界面一种感觉。在§3中,我们讨论了Macaulay的那些新颖或重要的实现细节。最后,在§4中,我们给出了一些系统基准。麦考利以f.s.麦考利的名字命名,因为他的开创性论文《模系统理论中枚举的一些性质》。”[Mac27]。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
The design of Macaulay: a system for computing in algebraic geometry and commutative algebra
Macaulay is a system for computing in algebraic geometry and cummutative algebra; it is capable of a variety of computations which are tedious or impossible to perform by hand. The primitive types in the system are polynomials, matrices, ideals, polynomial rings, modules, maps between rings, and complexes of modules. The system performs algebraic manipulation on objects of these types. The possible manipulations include the computation of standard (Gröbner) bases, modules of syzygies, finite free resolutions, Hilbert polynomials and functions. Using these basic operations, a variety of derived operations are possible, such as projections, ideal intersections, and the computation of coherent sheaf cohomology groups. The algorithm used for constructing standard (Gröbner) bases and syzygies is described in ([Buc76], [Zac78], [Sch80], [Bay82], [BaSt86a]). Macaulay is intended to provide a computational research tool for working mathematicians. Macaulay is designed primarily to aid in generating non-trivial examples in algebraic geometry and commutative algebra. Such examples help mathematicians to gain intuition, and formulate or gather evidence for conjectures. In certain cases, an example can provide a step in the proof of a theorem. This system has been continuously evolving since 1977 where it was first developed at the University of Illinois by the second author. The algorithms have become substantially more sophisticated and efficient and the scope and power of the system has increased dramatically since its inception. Macaulay differs in a number of significant ways from other computer algebra systems. The computation of standard bases is its fundamental operation, rather than simplification and factoring. Unlike other systems which provide for the computation of standard bases, submodules of free modules can uniformly be used wherever ideals can be used. Macaulay is written in the language C and its design has been optimized for execution on small systems; Macaulay is available, and reasonably powerful, on a Macintosh microcomputer. Macaulay uses a novel encoding scheme for monomials which considerably reduces the storage requirements for polynomials, further enhancing its viability on small systems. Computations in Macaulay are interruptible, with the full power of the system available to study and use partial results. Macaulay is command-driven, and is quickly learned by mathematicians having no experience with computers. The basic data types of Macaulay are highly structured, reflecting its focus on the construction of standard bases and syzygies, not the simplification of general expressions. This design allows Macaulay to outperform more general systems, within its problem domain. Macaulay is capable of many computations that are not available in more general systems. These include the computation of syzygies, finite free resolutions of modules and ideals, and coherent sheaf cohomology groups. The set of commands provided allow the user to directly compute and manipulate algebraic objects, without the need to write and debug complicated programs. Ideals and submodules are handled uniformly, in order to permit many of the above operations. There are tricks that permit the computation of first syzygies without use of modules, but any system which cannot uniformly handle standard basis calculations for modules in the same manner as ideals is incapable of computing higher syzygies, or cohomology groups. Surprisingly, other computer algebra systems that compute standard bases do so only for ideals. Macaulay (like Maple [CGGG83] is written in C for portability and efficiency. Portability is an important consideration because the availability of computer resources is constantly changing, and mathematicians are nomadic. The system has been designed to run on microcomputers as well as mainframes. Macaulay has been designed with the intention of making a given implementation capable of handling problems of as large a scale as possible. The Macintosh implementation is able to perform significant computations in a reasonable amount of time within the memory constraints available. The user does not have to purchase an unusually large amount of memory or disk space in order to run the system effectively; a 512K Macintosh is sufficient to satisfy many research mathematicians needs. The mainframe versions of Macaulay are intended as alternatives to microcomputers for specific problems which are too large for a microcomputer. For this reason, the same optimizations which make use of a microcomputer feasible, permit the solution of very large problems on a mainframe. It is useful to obtain intermediate results during a complex computation: partial results often suffice to answer questions, when the full result takes unexpectedly long to compute. The Macintosh implementation of Macaulay allows the user to halt the computation at reasonable stages of the computation, to examine partial results. Since Macaulay is not programmable, but rather command driven, Macaulay can be easily used by algebraic geometers with little or no training in computer science. Researchers are able to learn the system relatively quickly and use it for their everyday research. There is an online tutorial system built into Macaulay which familiarizes new users with the commands in the system, by stepping them through a set of examples which are based on typical computations in algebraic geometry and commutative algebra. Following this 20 minute tutorial, users can begin making use of the system for their research. Macaulay consists of approximately 9,000 lines of C source code. The object code on the Macintosh is 90K bytes in length. Currently, Macaulay is implemented on the Macintosh, Sun, Vax/VMS, and Ridge. In fact, it runs on a 512K Macintosh with one disk drive. The program has been used by mathematicians in a number of countries, including Canada, France, Germany, Italy, Norway, and the USA. The program is available by request from either author or by obtaining a copy from a current user. However, in the latter case, the authors should be contacted so that notices of updates can be sent to the new user. Macaulay is a continuously evolving system. There are two major design changes which we envision for the near future: more general base rings, and a programmable interface. Currently, all polynomials must be defined over polynomial rings with positive characteristic, and be homogeneous or quasi-homogeneous. In practice these restrictions are not serious; there are simple techniques for handling many of these problems in the current system. In the future we plan to remove these restrictions and allow more general base rings. While the command driven approach of Macaulay is easy to learn and use, a programmable interface would be more flexible. In the near future we plan to introduce such an interface. In §1, we discuss our original motivation for the present design of Macaulay. In §2, we present Macaulay from the user's point of view and explain the details of a sample session, in order to give a feeling for Macaulay's user interface. In §3, we discuss those implementation details of Macaulay which are novel or important. Finally, in §4, we present some system benchmarks. Macaulay is named after F. S. Macaulay, for his seminal paper “Some properties of enumeration in the theory of modular systems.” [Mac27].
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信