{"id":22,"date":"2016-08-01T23:37:59","date_gmt":"2016-08-01T22:37:59","guid":{"rendered":"http:\/\/eden-study.org\/?page_id=22"},"modified":"2023-12-13T14:29:48","modified_gmt":"2023-12-13T14:29:48","slug":"research","status":"publish","type":"page","link":"https:\/\/eden-study.org\/?page_id=22","title":{"rendered":"Research"},"content":{"rendered":"<p>[vc_row][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>We\u2019re all so busy being practical that we don\u2019t have time to be intelligent<\/p>\n<footer><cite>\u2014 Albert E. Cowdrey, The Tribes of Bela<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text][vc_text_separator title=\u201dActive research\u201d i_icon_fontawesome=\u201dfa fa-flask\u201d i_color=\u201dblack\u201d title_align=\u201dseparator_align_left\u201d add_icon=\u201dtrue\u201d el_class=\u201d.heading1\u2033][\/vc_column][\/vc_row][vc_row equal_height=\u201dyes\u201d el_id=\u201dresearch-active\u201d][vc_column width=\u201d1\/3\u2033]<ul class=\"ul-boxed list-unstyled p\"><li class=\"\">Machine Learning<\/li><li class=\"\">Artificial General Intelligence<\/li><li class=\"\">Utility Value of Currencies (Entropy)<\/li><li class=\"\">Computer trading (algotrading)<\/li><li class=\"\">Cryptocurrency & Blockchain technology<\/li><\/ul>[\/vc_column][vc_column width=\u201d2\/3\u2033][vc_column_text]My research currently focuses on <a href=\"\/pubtype\/disruptive\/\">disruptive technologies<\/a> or major paradigm shifts brought about by new technology, such as von Neumann (programmable) computers, computer trading and superintelligence.<\/p>\n<p>Disruption is taken to be an interdisciplinary area of research combining computing, philosophy, artificial intelligence, engineering, social sciences, and future studies, as inspired by the work of John von Neumann, Alan Turing, and <a href=\"http:\/\/sapience.org\/posts\/toffler-award\/\">Alvin Toffler<\/a>.\u00a0In particular I am interested in that transformative effects of increasingly intelligent AI.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>Science currently has three frontiers: the very big, the very small, and the very complex.<\/p>\n<footer><cite>\u2014 Eric Chaisson<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text][vc_text_separator title=\u201dPublished research\u201d i_icon_fontawesome=\u201dfa fa-pencil-square-o\u201d i_color=\u201dblack\u201d title_align=\u201dseparator_align_left\u201d add_icon=\u201dtrue\u201d el_class=\u201d.heading1\u2033][\/vc_column][\/vc_row][vc_row][vc_column width=\u201d1\/3\u2033]<ul class=\"ul-boxed list-unstyled\"><li class=\"\"><a href=\"\/pubtype\/sen\/\">Software Engineering<\/a><\/li><li class=\"\"><a href=\"\/pubtype\/ai\/\">Artificial Intelligence<\/a><\/li><li class=\"\"><a href=\"\/pubtype\/pcs\/\">Philosophy of Computer Science<\/a><\/li><\/ul>[\/vc_column][vc_column width=\u201d2\/3\u2033][vc_column_text]I read computer science in Tel Aviv University, writing my dissertations on <a href=\"\/pubs\/phd\/\">software design<\/a> and <a href=\"\/pubs\/msc\/\">machine learning,<\/a>\u00a0but as\u00a0student in the\u00a0<a href=\"\/bio\/edu\/\">Interdisciplinary Program<\/a> I was also given the opportunity to maintained active interest in other disciplines, including brain sciences, cognitive psychology, ontology, and semantics.<\/p>\n<p>My <a href=\"https:\/\/eden-study.org\/publications\/\">published<\/a>\u00a0work contributed to subjects in\u00a0<a href=\"#research-sen\">software engineering<\/a>, <a href=\"#research-ai\">artificial intelligence<\/a>, and the <a href=\"#research-pcs\">philosophy of computer science<\/a>.[\/vc_column_text][\/vc_column][\/vc_row][vc_row el_id=\u201dresearch-sen\u201d][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>It has long been my personal view that the separation of practical and theoretical work is artificial and injurious. Much of the practical work done in computing, both in software and in hardware design, is unsound and clumsy because the people who do it have not any clear understanding of the fundamental design principles of their work. Most of the abstract mathematical and theoretical work is sterile because it has no point of contact with real computing.<\/p>\n<footer><cite>\u2014 Christopher Strachey<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text]<ul class=\"ul-withdetails \"><li class=\"\">\n\t\t\t\t<div class=\"wrap\"><div class=\"image\" style=\"background-image:url(https:\/\/eden-study.org\/wp-content\/uploads\/2016\/07\/codecharts-front-400x600-e1472767385299.png);\"><div class=\"imageoverlay\"><i class=\"fa fa-search\"><\/i><\/div><\/div><div class=\"meta\"><h3>Software Engineering<\/h3><p><\/p><\/div><\/div>\n\t\t<div class=\"details\">\n\t\t\t<p>Theory and practice of software design, architecture, modelling, visualisation, and evolution;<\/p>\n<p>Formal methods: quantifying and formalising design traits; theory and practice of formal verification<\/p>\n\n\t\t<\/div> <\/li><\/ul>[\/vc_column][\/vc_row][vc_row el_id=\u201dresearch-sen\u201d][vc_column width=\u201d1\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Publication categories:[\/vc_wp_text][vc_wp_custommenu nav_menu=\u201d30\u2033][\/vc_column][vc_column width=\u201d2\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Key contributions:[\/vc_wp_text][vc_tta_accordion style=\u201dmodern\u201d color=\u201dwhite\u201d spacing=\u201d5\u2033 gap=\u201d5\u2033 active_section=\u201d0\u2033 collapsible_all=\u201dtrue\u201d][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dCodecharts (LePUS3)\u201d tab_id=\u201dresearch-codecharts\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467384-c8dbb8a0e329abc85ee9e5c321c68537-2\u2033 include=\u201d11, 566\u2033 filter_source=\u201dpubtype\u201d el_class=\u201dimg-responsive\u201d][vc_column_text css_animation=\u201dleft-to-right\u201d]Popular software modelling notations visualize implementation minutiae but fail to scale, to capture design abstractions, and to deliver effective tool support.<\/p>\n<p>The first version of the modelling language\u00a0was\u00a0named LePUS by its inventor, Dr Eden.\u00a0The LePUS notation\u00a0only\u00a0modelled design patterns. LePUS3, the language of Codecharts, was developed by Dr Eden\u00a0with his research students Dr Notis Gasparis and Dr Jonathan Nicholson.<\/p>\n<p>The formal design description language of Codecharts was tailored\u00a0to\u2014<\/p>\n<ul class=\"check-list\">\n<li class=\"check-list\">Visualize the building\u2013blocks of object\u2013oriented design<\/li>\n<li class=\"check-list\">Create bird\u2019s\u2013eye roadmaps of large programs with minimal symbols and no clutter<\/li>\n<li class=\"check-list\">Model blueprints of patterns, frameworks, and other design decisions<\/li>\n<li class=\"check-list\">Be exactly sure what diagrams claim about programs and reason rigorously about them<\/li>\n<\/ul>\n<p>LePUS3, the language of Codecharts, also satisfies the following requirements:<\/p>\n<ul class=\"check-list\">\n<li class=\"check-list\"><em>Scalability<\/em>: To model industrial-scale programs using small Codecharts with only few symbols<\/li>\n<li class=\"check-list\"><em>Automated design verifiability<\/em>: To allow programmers to continuously keep the design in synch with the implementation<\/li>\n<li class=\"check-list\"><em>Visualization<\/em> (only LePUS3): To allow tools to reverse-engineer legible Codecharts from plain source code modelling their design<\/li>\n<li class=\"check-list\"><em>Pattern verification<\/em>: To allow tools to determine automatically whether your program <em>implements<\/em> a design pattern<\/li>\n<li class=\"check-list\"><em>Abstraction in early design<\/em>: To specify unimplemented programs without committing prematurely to implementation minutia<\/li>\n<li class=\"check-list\"><em>Genericity<\/em>: To model a design pattern not as a specific implementation but as a design motif<\/li>\n<li class=\"check-list\"><em>Rigour<\/em>: To be rigorous and allow software designers to be sure exactly what Codecharts mean and reason rigorously about them<\/li>\n<\/ul>\n<p><a class=\"fasc-button fasc-size-medium fasc-type-glossy fasc-rounded-medium ico-fa fasc-ico-before fa-external-link ahe-button\" href=\"http:\/\/lepus.org.uk\">LePUS3 Website<\/a>[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dModelling design patterns\u201d tab_id=\u201dresearch-patterns\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467442-999b221c1334a5a5c9b2806a305cd68b-1\u2033 include=\u201d578, 572\u2033 filter_source=\u201dpubtype\u201d][vc_column_text css_animation=\u201dleft-to-right\u201d]Design patterns are not programs but blueprints of an implementation, templates which describe the correlations and collaborations\u00a0between generic\u00a0<em>participants<\/em> in a program. Modelling them therefore requires an appropriately generic language.<\/p>\n<p>We define <strong>Codecharts<\/strong>, a visual language for modelling the static (<em>decidable<\/em>) aspects of design patterns, and demonstrate how to verify whether\u00a0a given Java implementation <em>satisfies<\/em> the specification of the pattern.[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dVisualising Object-Oriented Design\u201d tab_id=\u201dvis-ood\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467501-e8b82ab746a06051f7a1dac77242f0d2-5\u2033 include=\u201d1428, 1414\u2033 filter_source=\u201dpubtype\u201d][vc_column_text css_animation=\u201dleft-to-right\u201d]Visualising object-oriented design (OOD) poses several challenges, for example:<\/p>\n<ul>\n<li>How can the constructs of OOD be best visualised?<\/li>\n<li>How\u00a0much of the program\u00a0should be visualised?<\/li>\n<\/ul>\n<p>This line of work demonstrates the answers given to these questions.[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dMeasuring Software Flexibility\u201d tab_id=\u201dresearch-flexibility\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467560-a03e1a2905b5c7f0f158770e28ebc910-2\u2033 include=\u201d583, 1205\u2033 filter_source=\u201dpubtype\u201d][vc_column_text css_animation=\u201dright-to-left\u201d]Everyone knows that software needs to be flexible. We also know that\u00a0design patterns and architectural styles improve the ability of\u00a0programs to evolve. But how can flexibility can be measured?<\/p>\n<p>Our work\u00a0suggests an objective measure for flexibility, called \u201cevolution complexity\u201d. We use the measure to compare the flexibility of design alternatives, thereby providing a robust definition\u00a0of <strong>flexibility<\/strong>.<\/p>\n<p>For example, we know that adding a new \u2018Visitor\u2019 class to a program that implements the <em>Visitor<\/em> pattern is easy, but now we can prove that the change has <strong>low evolution complexity<\/strong>.<\/p>\n<p>We also show that flexibility is\u00a0<em>relative<\/em> to a particular class of changes. For example, while it is easy to add a \u2018Visitor\u2019, it\u2019s hard to add an operation. We demonstrate that this change is hard by showing that adding an operation to an implementation of the <em>Visitor<\/em> pattern has <strong>high evolution complexity<\/strong>.[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dThe Intention\/Locality Hypothesis\u201d tab_id=\u201dilh\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467622-b92fd81a4e90dec970f3837599aaa2c6-3\u2033 include=\u201d584, 587\u2033 filter_source=\u201dpubtype\u201d][vc_column_text css_animation=\u201dleft-to-right\u201d]What is the difference between architecture and design?\u00a0This distinction is important since the choice of architecture has\u00a0strategic and\u00a0far-reaching implications over the implementation and therefore must be made early in the development process, whereas design decisions\u00a0have localized effect and must be deferred to a latter stage in the process.<\/p>\n<p>We distinguish between three abstraction strata in software design statements:<\/p>\n<ul type=\"i\">\n<li><em>Strategic statements<\/em>\u00a0include\u00a0programming paradigms\u00a0and\u00a0architectural styles<\/li>\n<li><em>Tactical statements<\/em>\u00a0include design patterns<\/li>\n<li><em>Implementation statements<\/em>\u00a0include class diagrams<\/li>\n<\/ul>\n<p>We define criteria of distinction in mathematical logic\u00a0and\u00a0present the Intension\/Locality Hypothesis:<\/p>\n<ol type=\"i\">\n<li class=\"style1\">The class of <strong>non-local statements<\/strong> (NL) contains <em>Strategic statements<\/em>;<\/li>\n<li>The class of <strong>local and intensional<\/strong> statements (LI) contains <em>Tactical statements<\/em>;<\/li>\n<li>The class of <strong>local and extensional statements<\/strong> (LE) contains <em>Implementation statements<\/em>.<\/li>\n<\/ol>\n<p>This distinction allows us to prove the <em>Architectural Mismatch Theorem<\/em>, which formalizes the notion of <em>architectural mismatch<\/em>\u00a0(<a href=\"http:\/\/dl.acm.org\/citation.cfm?id=625526\">Garlan, Allen & Ockerbloom 1995<\/a>).[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dRound-Trip Engineering\u201d tab_id=\u201dresearch-rte\u201d][vc_row_inner][vc_column_inner][vc_column_text css_animation=\u201dleft-to-right\u201d]<\/p>\n<h5><img loading=\"lazy\" decoding=\"async\" width=\"377\" height=\"329\" class=\"aligncenter size-full wp-image-1387\" src=\"https:\/\/eden-study.org\/wp-content\/uploads\/2016\/08\/round-trip-engineering.png\" alt=\"round-trip-engineering\" srcset=\"https:\/\/eden-study.org\/wp-content\/uploads\/2016\/08\/round-trip-engineering.png 377w, https:\/\/eden-study.org\/wp-content\/uploads\/2016\/08\/round-trip-engineering-128x112.png 128w\" sizes=\"auto, (max-width: 377px) 100vw, 377px\" \/><\/h5>\n<p>Inconsistency between design and implem entation is a major problem for most programmers.\u00a0Conflicts are common because there are no effective tools for detecting them. Original design documents are a hassle to update (and nobody bothers with that).\u00a0Absence of current and accurate\u00a0design documentation\u00a0results in software that is unpredictable and poorly understood.<br \/>\n<strong>Round-trip engineering<\/strong> tools support an iterative process of detecting conflicts and resolving them by changing either the design or the implementation.<!--more--><\/p>\n<p>A\u00a0Toolkit we developed, the Two-Tier Programming Toolkit, supports a round-trip engineering of native Java programs without interfering with any existing practices, tools or development environments, thereby posing a minimal barrier on adoption.\u00a0The Toolkit includes a user-guided software visualization and design recovery tool, which generates Codecharts from source code. A \u2018round-trip\u2019 process is possible because Codecharts visualizing source code can be edited to reflect the intended design, and the Verifier can detect conflicts between the intended and as-implemented design.<\/p>\n<p>Our work has\u00a0demonstrated\u00a0how the Toolkit effectively helps to close the gap between design and implementation, recreate design documentation, and maintaining consistency between design and implementation.[\/vc_column_text][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d12\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467707-9c7e1aa76580d45ddc3a77d7fb63cc7c-9\u2033 filter_source=\u201dpubtype\u201d el_class=\u201dthumbnail\u201d include=\u201d2205\u2033][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][\/vc_tta_accordion][\/vc_column][\/vc_row][vc_row el_id=\u201dresearch-ai\u201d][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>Suppose that [special and general relatively, automobiles, airplanes, quantum mechanics, large rockets and space travel, fission power, fusion bombs, lasers, and large digital computers] had all been presented to mankind in a single year! This is the magnitude of\u00a0\u201cfuture shock\u201d that we can expect from our AI expanded scientific community.<\/p>\n<footer><cite>\u2014 Ray Solomonoff<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text]<ul class=\"ul-withdetails \"><li class=\"\">\n\t\t\t\t<div class=\"wrap\"><div class=\"image\" style=\"background-image:url(https:\/\/eden-study.org\/wp-content\/uploads\/2016\/07\/singhyp-cove.jpg);\"><div class=\"imageoverlay\"><i class=\"fa fa-search\"><\/i><\/div><\/div><div class=\"meta\"><h3>Artificial Intelligence<\/h3><p><\/p><\/div><\/div>\n\t\t<div class=\"details\">\n\t\t\t<p>Machine learning; disruptive impact; superintelligence<\/p>\n\n\t\t<\/div> <\/li><\/ul>[\/vc_column][\/vc_row][vc_row][vc_column width=\u201d1\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Publication categories:[\/vc_wp_text]<ul class=\"ul-boxed list-unstyled\"><li class=\"\"><a href=\"\/pubtype\/ml\">Machine Learning<\/a><\/li><li class=\"\"><a href=\"\/pubtype\/superintelligence\/\">Superintelligence<\/a><\/li><\/ul>[\/vc_column][vc_column width=\u201d2\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Key contributions:[\/vc_wp_text][vc_tta_accordion style=\u201dmodern\u201d color=\u201dwhite\u201d spacing=\u201d5\u2033 gap=\u201d5\u2033 active_section=\u201d0\u2033 collapsible_all=\u201dtrue\u201d][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dLearning natural (\u201cfuzzy\u201c) concepts\u201d tab_id=\u201dresearch-learning\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d12\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477467944-657ef716412e450d6f794a1217e743cb-2\u2033 include=\u201d551\u2033 filter_source=\u201dpubtype\u201d el_class=\u201dthumbnail\u201d css=\u201d.vc_custom_1473871950293{padding-top: 0px !important;padding-right: 82px !important;padding-bottom: 0px !important;padding-left: 82px !important;}\u201d][vc_column_text]Humans learn to recognize birds and chairs without explicit definitions. \u2018Natural concepts\u2019 are noisy categories which have no crisp boundaries, yet humans learn identify them quickly and easily. Can artificial intelligence perform the same task?<\/p>\n<p>Creating an agent capable of identifying natural concepts effectively can become possible by building upon lessons learned from the human ability to perform this task.<\/p>\n<p>Our line of investigation borrows heavily from the interdisciplinary literature on concept formation and models of representation, in particular cognitive psychology and the philosophy of mind corpora.[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dSuperintelligence hypotheses\u201d tab_id=\u201dresearch-superintelligence\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477468027-3cf31f0e2e89696b5a07f57d39bc6bc2-0\u2033 include=\u201d13, 91\u2033 filter_source=\u201dpubtype\u201d][vc_column_text]Consider intelligence as the general ability to solve problems and increase utility that\u00a0animals and machines have, not only present humans. It would be naive to assume\u00a0<em>Homo Sapiens Sapiens<\/em>\u00a0has the highest intelligence possible or anything remotely close to it.\u00a0It is much more likely that much more intelligent\u00a0beings could exist.<\/p>\n<p>[vc_single_image image=\u201d1685\u2033 img_size=\u201dfull\u201d style=\u201dvc_box_border\u201d border_color=\u201dwhite\u201d onclick=\u201dlink_image\u201d]<\/p>\n<p>An agent whose intelligence exceeds that of the brightest person is said to be\u00a0<em>superintelligent<\/em>. It is hypothesized that\u00a0intelligence amplification (eg cognitive enhancement) may lead to\u00a0superintelligent\u00a0posthumans. Others have argued that self-improving <a href=\"\/pubtype\/ai\/\">artificial intelligence<\/a> can also become superintelligent, possibly in a process of <em>intelligence explosion<\/em>.<\/p>\n<p>Given the advances both in intelligence amplification (IA) and artificial intelligence (AI), the question many ask is which one will arrive first?[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][\/vc_tta_accordion][\/vc_column][\/vc_row][vc_row el_id=\u201dresearch-pcs\u201d][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>It was not made for those who sell oil or sardines<\/p>\n<footer><cite>\u2014 G. W. Leibniz, ca. 1674, on his calculating machine<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text]<ul class=\"ul-withdetails \"><li class=\"\">\n\t\t\t\t<div class=\"wrap\"><div class=\"image\" style=\"background-image:url(https:\/\/eden-study.org\/wp-content\/uploads\/2016\/08\/sen.png);\"><div class=\"imageoverlay\"><i class=\"fa fa-search\"><\/i><\/div><\/div><div class=\"meta\"><h3>Philosophy of Computer Science<\/h3><p><\/p><\/div><\/div>\n\t\t<div class=\"details\">\n\t\t\t<p>Ontology, epistemology, and paradigms of computer science<\/p>\n\n\t\t<\/div> <\/li><\/ul>[\/vc_column][\/vc_row][vc_row][vc_column width=\u201d1\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Publication categories:[\/vc_wp_text]<ul class=\"ul-boxed list-unstyled\"><li class=\"\"><a href=\"\/pubtype\/ontology\/\">Software Ontology<\/a><\/li><\/ul>[\/vc_column][vc_column width=\u201d2\/3\u2033][vc_wp_text el_class=\u201dheading3\u2033]Key contributions:[\/vc_wp_text][vc_tta_accordion style=\u201dmodern\u201d color=\u201dwhite\u201d spacing=\u201d5\u2033 gap=\u201d5\u2033 active_section=\u201d0\u2033 collapsible_all=\u201dtrue\u201d][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dWhat is the Philosophy of Computer Science?\u201d tab_id=\u201dresearch-whatispcs\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d6\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477468298-38e47d7e7401cb7e3ce76c4a5faa56cf-9\u2033 include=\u201d83, 634\u2033 filter_source=\u201dpubtype\u201d][vc_column_text css_animation=\u201dleft-to-right\u201d]<strong>Computer science<\/strong> is a broad discipline. Theoretical computer science is very mathematical, whereas software development has all the hallmarks of an engineering activity. Further facets merge with psychology and cognitive science and applications are found throughout the physical sciences and engineering.<\/p>\n<p>The <strong>philosophy of computer science<\/strong> is concerned with conceptual issues that arise by reflection upon the nature of computer science. The topics covered reflect the latter\u2019s wide range: What kind of discipline is computer science? What are the roles of design and experimentation? What role is played by mathematics? What do correctness proofs establish? These are only a few of the questions that form the body of the philosophy of computer science.<\/p>\n<p>\u00a0<\/p>\n<p>Our entry on the philosophy of computer science in Stanford Encyclopedia of Philosophy attempts to cast these questions in the context of existing philosophical issues and shed light on the answers that the various branches of computing may offer.[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][vc_tta_section i_icon_fontawesome=\u201dfa fa-lightbulb-o\u201d add_icon=\u201dtrue\u201d title=\u201dParadigms of Computer Science\u201d tab_id=\u201dresearch-paradigms\u201d][vc_row_inner][vc_column_inner][vc_basic_grid post_type=\u201dids\u201d show_filter=\u201dyes\u201d element_width=\u201d12\u2033 gap=\u201d2\u2033 filter_style=\u201dfilled-rounded\u201d filter_default_title=\u201d.\u201d filter_size=\u201dxs\u201d item=\u201d1084\u2033 initial_loading_animation=\u201dnone\u201d grid_id=\u201dvc_gid:1702477468430-a9eb87b72f5f28548ccf368bc8100bee-2\u2033 filter_source=\u201dpubtype\u201d el_class=\u201dthumbnail\u201d css=\u201d.vc_custom_1473872015868{padding-top: 0px !important;padding-right: 82px !important;padding-bottom: 0px !important;padding-left: 82px !important;}\u201d include=\u201d574\u2033][vc_column_text]Is computer science a branch of mathematics, an engineering discipline, or a natural science? Should knowledge about the behaviour of programs proceed deductively or empirically? Are computer programs on a par with mathematical objects, with mere data, or with mental processes?<\/p>\n<p>Public debates on the answers to these questions reveal three very different perspectives over methodological, ontological, and epistemological issues:<\/p>\n<ul>\n<li>The <strong>rationalist paradigm<\/strong>, which was common among theoretical computer scientists, defines computer science as a branch of mathematics, treats programs on a par with mathematical objects, and seeks certain, a priori knowledge about their \u2018correctness\u2019 by means of deductive reasoning.<\/li>\n<li>The <strong>technocratic paradigm<\/strong>, promulgated mainly by software engineers, defines computer science as an engineering discipline, treats programs as mere data, and seeks probable, a posteriori knowledge about their reliability empirically using testing suites.<\/li>\n<li>The <strong>scientific paradigm<\/strong>, prevalent in the branches of artificial intelligence, defines computer science as a natural (empirical) science, takes programs to be entities on a par with mental processes, and seeks a priori and a posteriori knowledge about them by combining formal deduction and scientific experimentation.<\/li>\n<\/ul>\n<p>[\/vc_column_text][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][\/vc_tta_accordion][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<blockquote>\n<p>If we knew what it was we were doing, it would not be called research, would it?<\/p>\n<footer><cite>\u2014 Albert Einstein<\/cite><\/footer>\n<\/blockquote>\n<p>[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text] We\u2019re all so busy being practical that we don\u2019t have time to be intelligent \u2014 Albert E. Cowdrey, The [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-22","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/pages\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eden-study.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=22"}],"version-history":[{"count":8,"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/pages\/22\/revisions"}],"predecessor-version":[{"id":2343,"href":"https:\/\/eden-study.org\/index.php?rest_route=\/wp\/v2\/pages\/22\/revisions\/2343"}],"wp:attachment":[{"href":"https:\/\/eden-study.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}