Architecture
Technologies
The computability theory portal follows an API-driven architecture.
- The client is written in Typescript and Sass, based on React and Bootstrap
- The API is written in python based on the REST framework of Django. It uses a PostgreSQL database.
Databases
The computability theory portal involves many databases:
- GeoNames is a geographical database that covers all countries and contains over eleven million placenames that are available for download free of charge.
- MSC 2020 is the latest revision of the Mathematics Subject Classification (MSC), jointly published by Mathematical Reviews and zbMATH Open under a Creative Commons CC-BY-NC-SA license. It is used to classify publications and researchers based on research subjects
- zbMath Open (formerly known as Zentralblatt MATH) is the world's most comprehensive and longest-running abstracting and reviewing service in pure and applied mathematics. It is the primary source for the serials, authors and publications.
- arXiv is a curated research-sharing platform open to anyone. It is indirectly used by the portal through zbMath Open which includes arXiv publications. It is also directly used by the portal to generate PDF thumbnails for the arXiv publications.
- ROR (Research Organization Registry) is a global, community-led registry of open persistent identifiers for research organizations.
- OpenAlex is a bibliographic catalogue of scientific papers, authors and institutions accessible in open access mode, by OurResearch. It is used to provide institutions for authors.
- YouTube is online video sharing platform owned by Google. It hosts the video section of the portal.
- Google Books is a service from Google that searches the full text of books and magazines that Google has scanned, converted to text using optical character recognition (OCR), and stored in its digital database. It is used for the books section of the portal.
- Django Languages plus contains a small (but popular) subset of all living languages, and is not even a comprehensive set of the ISO 639 languages. It does however include the endonym/autonym/exonym.
Synchronization
Here is a list of background synchronization tasks to keep the database up to date. The time reference is UTC.
| Model | Source | Frequency | Description |
|---|---|---|---|
| Serial | zbMath Open | The first day of every month, at 5am | Full synchronization |
| Organization | ROR | The third day of every month, at 5am | Full synchronization |
| Publication | zbMath Open | The second day of every month, at 5am | All publications with MSC subject in the portal |
| Publication | zbMath Open | Every Tuesday, at 4am | Publications of the last 3 years with MSC subject in the portal |
| Publication | zbMath Open | Every day at 2am | Publications of the current year with MSC subject in the portal |
| Publication | zbMath Open | The fifth day of month at 5am | Publications of the last 2 years with authors in the portal having published recently (among the last 5 years) |
| Publication | zbMath Open | Every January 7 and July 7 | Publications of the last 2 years with authors in the portal |
| User | zbMath Open | Every Wednesday, at 4am | Full synchronization |
| User | Every day at 3am | Computation of publication counts and recent publication counts (last 5 years) | |
| User | OpenAlex | The fourth day of every month, at 5am | Learn affiliations from OpenAlex |
Backups
- Daily backup of the database at 6am
- Weekly upload on an AWS S3 Glacier storage at 7am every Wednesday
Mathematics Subject Classification
The publications are retrieved from the zbMath Open database based on their MSC 2020 codes. A publication is considered to be part of the computability theory portal if it contains one of the following MSC codes:
| Code | Description |
|---|---|
| 03Dxx | Computability and recursion theory |
| 03D03 | Thue and Post systems, etc. |
| 03D05 | Automata and formal grammars in connection with logical questions [See also 68Q45, 68Q70, 68R15] |
| 03D10 | Turing machines and related notions [See also 68Q04] |
| 03D15 | Complexity of computation (including implicit computational complexity) [See also 68Q15, 68Q17] |
| 03D20 | Recursive functions and relations, subrecursive hierarchies |
| 03D25 | Recursively (computably) enumerable sets and degrees |
| 03D28 | Other Turing degree structures |
| 03D30 | Other degrees and reducibilities in computability and recursion theory |
| 03D32 | Algorithmic randomness and dimension [See also 68Q30] |
| 03D35 | Undecidability and degrees of sets of sentences |
| 03D40 | Word problems, etc. in computability and recursion theory [See also 06B25, 08A50, 20F10, 68R15] |
| 03D45 | Theory of numerations, effectively presented structures [See also 03C57] {For intuitionistic and similar approaches, see 03F55} |
| 03D50 | Recursive equivalence types of sets and structures, isols |
| 03D55 | Hierarchies of computability and definability |
| 03D60 | Computability and recursion theory on ordinals, admissible sets, etc. |
| 03D65 | Higher-type and set recursion theory |
| 03D70 | Inductive definability |
| 03D75 | Abstract and axiomatic computability and recursion theory |
| 03D78 | Computation over the reals, computable analysis {For constructive aspects, see 03F60} |
| 03D80 | Applications of computability and recursion theory |
| 03D99 | None of the above, but in this section |
| 03B30 | Foundations of classical theories (including reverse mathematics) |
| 68Qxx | Theory of computing |