SlideShare a Scribd company logo
L {<M,s> : s ∈ L(M), |L(M)| = 2}. Prove that L ∉ SD by a
reduction from ¬H}
R(<M,w>) =
1. Define M#(x):
1.a If x = a or x = b accept
1.b Save x
1.b Replace x with w
1.c Run M on w
1.d Restore x
1.e Accept x
2. Return <M#,a>
If there were an Oracle Mₒ that could semidecide L, then C =
Mₒ(R(<M,w>)) =
Mₒ(<M#,a>) could semidecide ¬H:
<M,w> ∈ ¬H: M# would accept a and b at 1.a, and then loop
forever at 1.c. Thus
L(M#) = {a,b}, and Mₒ would accept <M#,a> because a ∈
{a,b}, and |{a,b}| = 2
<M,w> ∉ ¬H: M# would accept a and b at 1.a, proceed through
1.c, and accept
everything else at 1.e. Thus L(M#) = ∑*, and Mₒ would not
accept <M#,a> because
|∑*| != 2.
But no TM could semidecide ¬H, so Mₒ could not possibly
exist.
BSA/520 v4
Gail Industries Case Study
BSA/520 v4
Page 6 of 6
Gail Industries: Smallville Collections Processing Entity Case
Study
This case study will be used to complete your assignments
throughout the course. Some sections of the case study will be
necessary in multiple assignments. See the assignment
instructions for specific assignment requirements.Introduction
to Gail Industries
Gail Industries is a partner to many Fortune 1000 companies
and governments around the world. Gail Industries’ role is to
manage essential aspects of their clients’ operations while
interacting with and supporting the people their clients serve.
They manage millions of digital transactions every day for
various back office processing contracts.
One of Gail Industries’ clients is the city of Smallville.
Smallville, despite its name, is a metropolis seated in the heart
of the nation. The city has 2.5 million residents, and the greater
Smallville metropolitan area has a population of about 4 million
people.Overview of the Operations of Smallville Collections
Processing Entity (SCOPE) Summary of Services Provided
Collections Processing
The Smallville Collections Processing Entity (SCOPE) provides
collections processing services to the city of Smallville. SCOPE
receives tax payments, licensing fees, parking tickets, and court
costs for this major municipality. The city of Smallville sends
out invoices and other collections notices, and SCOPE
processes payments received through the mail, through an
online payment website, and through an interactive voice
response (IVR) system. Payments are in the form of checks,
debit cards, and credit cards. After processing invoices, SCOPE
deposits the monies into the bank account for the city.
SCOPE is responsible for ensuring the security of the mail that
comes into the possession of all employees, subcontractors, and
agents at its processing facility, located within Smallville.
Controls and procedures for money and mail handling are
established by SCOPE to ensure payments are accounted for,
from the earliest point received through processing and deposit.
These controls and procedures provide:
1. Assurances for proper segregation of duties
2. The design and use of satisfactory documentation to ensure
proper recording of transactions
3. The safeguarding of access to and use of all assets and
records
4. Independent checks on performance
Payment Receipt
The purpose of collections processing is to receive and process
various types of payments, post the payment data to the Central
Collections System (CCS), and deposit the accompanying funds
in the Smallville bank account. This process includes the
following types of payment receipts:
· Regular mail – paper checks only
· Website – credit and debit card payments; electronic checks
· IVR – credit and debit card payments
Mail Delivery
A bonded courier picks up the payments from the United States
Postal Service (USPS) facility in Smallville. SCOPE uses a
subcontractor for courier services. This courier is dedicated,
picking up and delivering mail only for SCOPE. This courier is
also required to sign for registered, certified, and express
delivery envelopes.
Opening and Sorting Mail
The daily success of payment processing depends on receiving
mail quickly from the postal service, opening that mail, and
properly sorting the contents for processing. Batches contain
similar payment types: tax payments are processed together,
court collections together, and so forth.
Deposits
Deposits are made daily into the Smallville bank account.
Electronic payments (debit cards, credit cards, and paperless
checks) are deposited through an interface between CCSys and
the bank. Checks are converted to electronic debits and
deposited electronically. However, those that cannot be
converted to electronic form are deposited in physical
form.Functional Areas of Operations
Gail Industries uses the following specific functional areas of
operations for SCOPE:
· Contract manager – responsible for the overall management of
contract deliverables of the payment processing operation,
including the monitoring of financial expenditures to ensure
compliance with contract budgets.
· Operations manager – responsible for planning, managing, and
controlling the day-to-day activities of the team that provides
operational support for the business unit, including the
establishment of operational objectives and work plans and
delegation of assignments to subordinate managers.
· Information technology (IT) manager – responsible for
developing and maintaining the strategy of the future direction
of IT infrastructure, including developing plans for the
implementation of new IT projects and managing relationships
with IT-related vendors and subcontractors.
· Accounting – responsible for performing a variety of routine
clerical and accounting functions within the accounting
department, including daily balancing of receipts. In addition,
the accountant resolves exception transactions, including
charged back checks (bounced checks), forgery affidavits, and
recoupment.
· Call center – the city of Smallville does not have a centralized
call center for handling questions relating to payments and
invoices. It is considering adding one to the scope of services
offered by Gail Industries.Information SystemsServices
Gail Industries services are designed around the following tools
and technologies:
· Data Capture and Imaging – real-time instrument imaging and
data capture—provides imaging, accountability and reporting of
checks and remitted payments.
· Invoice Management and Reporting – data correction and
maintenance utilizing automated payment auditing and
historical analysis. A browser-based application is available for
internal SCOPE and Smallville staff to perform administrative
functions. A separate internet-accessible payment portal allows
for citizens, business owners, and others to view invoices and
make payments.Processing Platforms
Gail Industries currently utilizes cloud-based servers on the
Amazon Web Services (AWS) platform for internet-accessible
application. Data capture, imaging, and the payment processing
application run on local servers in a secured computer room.
Local servers run both Linux and Windows Server operating
systems. Data is stored on Microsoft SQL Server to provide
storage of payment, image, and balancing data.
The servers supporting the CCS are housed within the server
room (also known as the data center) and are managed by Gail
Industries’ IT staff. The IT staff provides the following
services:
· Firewall management – monitoring and management of the
firewall systems and networks on a 24/7/365 basis.
· Network monitoring – proactive network and server
monitoring services to help maximize system performance and
uptime.
· Data backup – data backup services for the production
payment, imaging, and balancing data.
· Incident management – IT incident monitoring,
documentation, and resolution management.Control Objectives
and Related Controls
Note: Only select control objectives and related controls are
included in the list below.Physical Security (Data Center)
Control Objective 1: The controls provide reasonable assurance
that physical access to computer resources within Gail
Industries’ data center is restricted to authorized and
appropriate personnel.
To protect physical assets, management has documented and
implemented physical access procedures to grant, control,
monitor, and revoke access to the on-site data center.
The data center requires two-factor authentication: a biometric
credential via retinal eye scanner and a badge access card.
Individuals requesting badge access document the request on a
standardized employee management form that must be approved
by departmental management. Administrative access to the
badge access system is restricted to authorized IT personnel.
When an employee is terminated, IT personnel revoke the badge
access privileges as a component of the termination process. In
addition, the IT manager performs a review of badge access
privileges on a monthly basis to help ensure that terminated
employees do not retain badge access.
All visitors must sign a logbook and present picture ID to their
escort upon entering the data center. Access is restricted to
authorized IT personnel and equipment technicians.
CCTV surveillance cameras are utilized throughout the facility
and the data center to record activity; these images are retained
for a minimum of 45 days.Physical Security (Facilities)
Control Objective 2: Controls provide reasonable assurance that
physical access to assets within Gail Industries’ facilities is
restricted to authorized and appropriate personnel.
To protect physical assets, management has documented and
implemented physical access procedures to grant, control,
monitor, and revoke access to the on-site facility for SCOPE.
A door badge access system is employed to control access to
areas within the facility (including the data center) through the
use of predefined security zones.
Individuals requesting badge access to the facility document the
request on a standardized employee management form,
accessible through Gail Industries’ employee on-boarding
system (known as GEO). All requests must be approved by
departmental management. Administrative access to the badge
access system is restricted to authorized IT personnel.
Upon termination (voluntary or involuntary), IT personnel
revoke badge access privileges as a task in the termination
process. In addition, the IT manager performs a monthly review
of badge access privileges to ensure that terminated employees
do not retain badge access.
Both entrances into the facility are locked and are monitored by
administrative personnel. The receptionist must unlock the door
for visitor access. Visitors are required to ring a video doorbell
and announce themselves to the receptionist. Visitors sign a
logbook when entering the facility, and they are required to
wear a visitor’s badge at all times. Visitors must be escorted by
an authorized employee when accessing sensitive facility areas
such as the mail room and server room.
CCTV surveillance cameras are utilized throughout the facility
and server room to record activity. Video images are retained
for a minimum of 45 days.Change Management
Control Objective 4: Controls provide reasonable assurance that
changes to network infrastructure and system software are
documented, tested, approved, and properly implemented to
protect data from unauthorized changes and to support user
entities’ internal control over financial reporting.
Documented change management policies and procedures are in
place to address change management activities. Further, there
are provisions for emergency changes to the infrastructure and
operating systems. Change requests are documented via a
change request (CR) form. CRs include details of the change,
including the change requestor, the date of the request, the
change description, and change specifications. Management,
through the Change Advisory Board (CAB), holds a weekly
meeting to review and prioritize change requests. During this
meeting, management authorizes change requests by signing off
on the CR form.
Detailed testing is performed prior to implementation of the
change in test environments that are logically separated from
the production environment. The CAB approves the changes
prior to implementation. The ability to implement infrastructure
and operating system updates to the production systems is
restricted to user accounts of authorized IT personnel.Logical
Security
Control Objective 5: Controls provide reasonable assurance that
administrative access to network infrastructure and operating
system resources is restricted to authorized and appropriate
users to support user entities’ internal control over financial
reporting.
Information security policies have been documented and are
updated annually to assist personnel in the modification of
access privileges to information systems and guide them in
safeguarding system infrastructure, information assets, and data.
Infrastructure and operating system users are authenticated via
user account and password prior to being granted access.
Password requirements are configured to enforce minimum
password length, password expiration intervals, password
complexity, password history requirements, and invalid
password account lockout threshold, as documented in the IT
Policies and Procedures Manual.
The CCS application authenticates users through the use of
individual user accounts and passwords before granting access
to the applications. CCS utilizes predefined security groups for
role-based access privileges. The application enforces password
requirements of password minimum length, password expiration
intervals, password complexity, password history, and invalid
password account lockout threshold.Excerpt from IT Policies
and Procedures Manual
Version 1.0, 12/31/2016
Revision History
Date
Author
Notes
12/31/2016
Ken Smith
Version 1.0, accepted by client
Overview
This policy is intended to establish guidelines for effectively
creating, maintaining, and protecting passwords at SCOPE.
Scope
This policy shall apply to all employees, contractors, and
affiliates of SCOPE, and shall govern acceptable password use
on all systems that connect to SCOPE network or access or store
SCOPE, city of Smallville, or Gail Industries data.
Policy
Password Creation
1. All user and admin passwords must be at least [8] characters
in length. Longer passwords and passphrases are strongly
encouraged.
2. Where possible, password dictionaries should be utilized to
prevent the use of common and easily cracked passwords.
3. Passwords must be completely unique, and not used for any
other system, application, or personal account.
4. Default installation passwords must be changed immediately
after installation is complete.
Password Aging
1. User passwords must be changed every 60 days. Previously
used passwords may not be reused.
2. System-level passwords must be changed on a monthly basis.
Password Protection
1. Passwords must not be shared with anyone (including
coworkers and supervisors), and must not be revealed or sent
electronically.
2. Passwords shall not be written down or physically stored
anywhere in the office.
3. When configuring password “hints,” do not hint at the format
of your password (e.g., “zip + middle name”)
4. User IDs and passwords must not be stored in an unencrypted
format.
5. User IDs and passwords must not be scripted to enable
automatic login.
6. “Remember Password” feature on websites and applications
should not be used.
7. All mobile devices that connect to the company network must
be secured with a password and/or biometric authentication and
must be configured to lock after 3 minutes of inactivity.
Enforcement
It is the responsibility of the end user to ensure enforcement
with the policies above.
If you believe your password may have been compromised,
please immediately report the incident to the IT Department and
change the password.
Copyright© 2019 by University of Phoenix. All rights reserved.
Copyright© 2019 by University of Phoenix. All rights reserved.
L = { <M,s> : s ∈ L(M) and |L(M)| % 2 = 0}. Prove that L ∉ D
by a reduction from
H.
One possible proof:
R(<M,w>) =
1. Define M#(x):
1.a If x = a then accept
1.b Save x
1.c Replace x with w on the input tape
1.d Run M on w
1.e Restore x
1.f If x = b accept
2. Return <M#,a>
If there were an Oracle Mₒ that could decide L, then C =
Mₒ(R(<M,w>)) =
Mₒ(<M#,a>) could decide H:
<M,w> ∈ H: M# would accept a at 1.a, proceed through 1.d,
and then accept b at
1.f. Thus L(M#) = {a,b}, and Mₒ accepts <M#,a> because a ∈
{a,b}, and
|{a,b}| %2 = 0.
<M,w> ∉ H: M# would accept a at 1.a, and loop forever at 1.d.
Thus L(M#) = {a},
and Mₒ rejects <M#,a> because |{a}|%2 = 1.
But no TM could decide H, so Mₒ could not possibly exist.
Lab 9, due Thurdsay 5 pm
L = { <M,s> : s ∈ L(M) and |L(M)| % 2 = 0}. For
example,
suppose that
L(M) = {aa}. Then <M,aa> ∉ L because |L(M)| = 1, 1 % 2 = 1;
If L(M)
{a,aaa} then <M,ℇ> ∉ L because ℇ ∉ L(M), but <M,aaa> ∈ L.
Prove that L
∉ D by reduction from H.
Your proof could implement R, the mapping reduction function,
as a
Java
or Python program in the form demonstrated, which allows the
user to
configure whether M halts on w
R<M,w> =
1. Define M#(x)
1.a If x = a then accept
1.b Save x
1.c Replace x with w on the input tape
1.d Run M on w
1.e Restore x to the input tape
1.f If x = b accept
2. Return <M#,a>
If there were an Oracle Mₒ that could decide L, the C =
Mₒ(R(<M,w>)) =
Mₒ(<M#,a>) could decide H.
<M,w> ∈ H: M# accepts a at 1.a, passes through 1.d, and
accepts b at
1.f. So L(M#) = {a,b}, and Mₒ accepts <M#,a> because a ∈
L(M#), and
|L(M#)| %2 = 0.
<M,w> ∉ H: M# accepts a at 1.a and then loops forever at 1.d
Thus
L(M#)
= {a}, and Mₒ rejects <M#,a> because |L(M#)| % 2 = 1.
But no TM could decide H, so Mₒ could not possibly exist.
Lab 10: L {<M,s> : s ∈ L(M), |L(M)| = 2}. Prove that L ∉ SD
by a
reduction from ¬H.
H3 2. (12.5 points) L = { <M,t> : t ∈ L(M) and s ∉ L(M), t,s ∈
{a,b}*,
where t is the string after s in
a lexicographic ordering of {a,b}*}. As examples, which must
not
appear in your proof: Let
L(M₁) = {b,aa}. Then <M₁,b> ∈ L because b ∈ L(M₁) and a ∉
L(M₁);
<M₁,aa> ∉ L because both
aa and b are in L(M₁); and <M₁,a> ∉ L because a ∉ L(M₁).
Prove that L
∉ D using a reduction
from H. Do not Rice's theorem.
Rony
Highlight
L₁ = {<M,s> : M rejects ss, but accepts exactly two other strings
ending
in s}. Prove that L₁ ∉ D by a reduction from H.
R(<M,w>) =
1. Define M#(x)
1.a if x = aabaab reject
1.b save x
1.c Replace x with w on the the input tape
1.d Run M on w
1.e Restore x
1.f if x = aaab, accept
1.g if x = baab, accept
1.h else reject
2. Return <M#,aab>
if x == "aabaab":
print("aabaab ∉ L")
sys.exit()
M(w) #stop here if M loops on w
if x == "aaab":
print("aaab ∈ L")
sys.exit()
if x == "aab":
print("baab ∈ L")
sys.exit()
If there were an Oracle Mₒ that could decide L, the C =
Mₒ(R(<M,w>)) =
Mₒ(<M#,aab>) could decide H.
<M,w> ∈ H: Mₒ accepts <M#,aab> because M# rejects when x =
aabaab.
If x != aabaab, then M# passes through step 1.d, and
then
accepts exactly strings ending aab at steps
1.g and 1.h.
<M,w> ∉ H: Mₒ rejects <M#,aab> because L(M#) does not
include
exactly two strings in aab. L(M#) = {} = Ø
1. Define M#(x)
1.a if x = aabaab reject
1.b save x
1.c Replace x with w on the the input tape
1.d Run M on w LOOP FOREVER, NEVER GET PAST 1.D
But no TM could decidde H, so Mₒ could not possibly exist.
L₂ = {<M> : No string in L(M) ends with ".pdf"}. Prove that L₂
∉ D by
a
reduction from H.
R(<M,w>):
1. Define M#
1.w Replace x with w on the input tape
1.x Run M on w
1.y Accept
2. Return <M#>
If there were an Oracle Mₒ that decides L₂, then C = ¬Mₒ(<M#>)
decides
H.
<M,w> ∈ H: L(M#) = ∑*. What does Mₒ think about TMs that
accept ∑*?
Does it think are elements of L₂ or not?
Mₒ accepts if it thinks that there are NO strings in ∑*
that end in .pdf; otherwise it rejects.
Mₒ REJECTS <M#> because there an infinite number
of strings in ∑* that end in .pdf
<M,w> ∉ H: L(M#) = Ø, and so Mₒ ACCEPTS, because Ø
contains no
strings
ending in .pdf
But nothing could decide H,so L₂ is undecdiable as well.
Prove that L₂ ∉ SD by a reduction from ¬H:
R(<M,w> =
1. Define M#(x):
1.a Replace x with w on the input tape.
1.b Run M on w
1.c Accept (accepts any x)
2. Return <M#>
If there were an Oracle Mₒ that could semidecide L₂, then
C=Mₒ(R(<M,w>))
= Mₒ(M#) could semidecide ¬H: Note that the requirements for
a
semideciding Mₒ are that Mₒ accept if <M#> ∈ L₂, and either
loop or
reject if <M#> ∉ L₂.
<M,w> ∈ ¬H: M# loops forever 1.b and thus L(M#) = Ø. Mₒ
accepts <M#>
because L(M#) contains no strings ending in ".pdf"
<M,w> ∉ ¬H: M# passes through 1.b and accepts any x at 1.c.
Thus
L(M#) = ∑*,
and Mₒ does not accept <M#> because ∑* contains strings
ending in
".pdf"
But no TM could semidecide ¬H, so Mₒ could not possibly
exist.
L₃ = {<M> : L(M) is an infinite language}. Prove that
L₃ ∉ SD using a reduction from ¬H.
Does this proof work?
R(<M,w>) =
1. Define M#(x):
1.a Replace x with w on the input tape.
1.b Run M on w
1.c Accept (accepts any x)
2. Return <M#>
If there were an Oracle Mₒ that could semidecide L₂, then
C=¬Mₒ(R(<M,w>))
= ¬Mₒ(M#) could semidecide ¬H:
<M,w> ∈ ¬H: M# loops forever 1.b and thus L(M#) = Ø. Mₒ
does not
accept <M#>
because L(M#) = Ø, and Ø is not an infinite language. So C
accepts.
<M,w> ∉ ¬H: M# passes through 1.b and accepts any x at 1.c.
Thus
L(M#) = ∑*,
and Mₒ accepts <M#> because ∑ is an infinie language. So C
rejects.
L₄ = {<M> : L(M) is context-free}.
Prove that L₄ ∉ SD using a reduction from ¬H
R (<M,w>) =
1. Define M#
1.a Save x.
1.b Erase the input tape.
1.c Write w on the input tape.
1.d Simulate M on w.
1.e If x ∈ aⁿbⁿcⁿ, accept.
1.f Else loop.
2. Return <M#>.
66 C O M M U N I C AT I O N S O F T H E A C M | J A
N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1
contributed articles
T H E C H U R C H - T U R I N G T H E S I S (CTT)
underlies tantalizing
open questions concerning the fundamental place
of computing in the physical universe. For example,
is every physical system computable? Is the universe
essentially computational in nature? What are the
implications for computer science of recent speculation
about physical uncomputability? Does CTT place a
fundamental logical limit on what can be computed,
a computational “barrier” that cannot be broken, no
matter how far and in what multitude of ways computers
develop? Or could new types of hardware, based perhaps
on quantum or relativistic phenomena, lead to radically
new computing paradigms that do
breach the Church-Turing barrier, in
which the uncomputable becomes com-
putable, in an upgraded sense of “com-
putable”? Before addressing these ques-
tions, we first look back to the 1930s to
consider how Alonzo Church and Alan
Turing formulated, and sought to jus-
tify, their versions of CTT. With this nec-
essary history under our belts, we then
turn to today’s dramatically more pow-
erful versions of CTT.
History of the Thesis
Turing stated what we will call “Turing’s
thesis” in various places and with vary-
ing degrees of rigor. The following for-
mulation is one of his most accessible.
Turing’s thesis. “L.C.M.s [logical com-
puting machines, Turing’s expression
for Turing machines] can do anything
that could be described as … ‘purely me-
chanical’.”38
Turing also formulated his thesis
in terms of numbers. For example, he
said, “It is my contention that these op-
erations [the operations of an L.C.M.]
include all those which are used in
the computation of a number.”36 and
“[T]he ‘computable numbers’ include
all numbers which would naturally be
regarded as computable.”36
Church (who, like Turing, was work-
ing on the German mathematician
David Hilbert’s Entscheidungsproblem)
advanced “Church’s thesis,” which he
expressed in terms of definability in his
lambda calculus.
Church’s thesis. “We now define the
notion … of an effectively calculable
The Church-
Turing Thesis:
Logical Limit
or Breachable
Barrier?
D O I : 1 0 . 1 1 4 5 / 3 1 9 8 4 4 8
In its original form, the Church-Turing thesis
concerned computation as Alan Turing
and Alonzo Church used the term in 1936—
human computation.
BY B. JACK COPELAND AND ORON SHAGRIR
key insights
˽ The term “Church-Turing thesis” is used
today for numerous theses that diverge
significantly from the one Alonzo Church
and Alan Turing conceived in 1936.
˽ The range of algorithmic processes
studied in modern computer science
far transcends the range of processes a
“human computer” could possibly carry out.
˽ There are at least three forms of
the “physical Church-Turing thesis”—
modest, bold, and super-bold—though,
at the present stage of physical inquiry,
it is unknown whether any of them is true.
http://dx.doi.org/10.1145/3198448
12oclockscholar
Highlight
12oclockscholar
Sticky Note
Turing also thought LCMs could be intelligent as humans are.
∴ He viewed consciousness as mechanical?
J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M
M U N I C AT I O N S O F T H E A C M 67
I
M
A
G
E
B
Y
N
A
S
A
,
E
S
A
,
A
N
D
T
H
E
H
U
B
B
L
E
H
E
R
I
T
A
G
E
T
E
A
M
(
S
T
S
C
I
/A
U
R
A
)
function of positive integers by iden-
tifying it with the notion of a recursive
function of positive integers (or of a
λ-definable function of positive inte-
gers).”5
Church chose to call this a definition.
American mathematician Emil Post, on
the other hand, referred to Church’s the-
sis as a “working hypothesis” and criti-
cized Church for masking it in the guise
of a definition.33
Upon learning of Church’s “defi-
nition,” Turing quickly proved that
λ-definability and his own concept of
computability (over positive integers)
are equivalent. Church’s thesis and Tur-
ing’s thesis are thus equivalent, if atten-
tion is restricted to functions of positive
integers. (Turing’s thesis, more gen-
eral than Church’s, also encompassed
computable real numbers.) However,
it is important for a computer scientist
to appreciate that despite this exten-
sional equivalence, Turing’s thesis and
Church’s thesis have distinct meanings
and so are different theses, since they
are not intensionally equivalent. A lead-
ing difference in their meanings is that
Church’s thesis contains no reference
to computing machinery, whereas Tur-
ing’s thesis is expressed in terms of the
“Turing machine,” as Church dubbed it
in his 1937 review of Turing’s paper.
It is now widely understood that
Turing introduced his machines with
the intention of providing an idealized
Is everything in the physical universe computable? Hubble
Space Telescope view of the Pillars of Creation in the Eagle
Nebula.
68 C O M M U N I C AT I O N S O F T H E A C M | J A
N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1
contributed articles
each going far beyond CTT-O. First, we
look more closely at the algorithmic
form of thesis, as stated to a first approx-
imation by Lewis and Papadimitriou29:
“[W]e take the Turing machine to be a
precise formal equivalent of the intuitive
notion of ‘algorithm’.”
What Is an Algorithm?
The range of algorithmic processes
studied in modern computer science
far transcends the range of processes
a Turing machine is able to carry out.
The Turing machine is restricted to, say,
changing at most one bounded part at
each sequential step of a computation.
As Yuri Gurevich pointed out, the con-
cept of an algorithm keeps evolving: “We
have now parallel, interactive, distrib-
uted, real-time, analog, hybrid, quan-
tum, etc. algorithms.”22 There are en-
zymatic algorithms, bacterial foraging
algorithms, slime-mold algorithms, and
more. The Turing machine is incapable
of performing the atomic steps of algo-
rithms carried out by, say, an enzymatic
system (such as selective enzyme bind-
ing) or a slime mold (such as pseudopod
extension). The Turing machine is simi-
larly unable to duplicate (as opposed to
simulate) John Conway’s Game of Life,
where—unlike a Turing machine—ev-
ery cell updates simultaneously.
A thesis aiming to limit the scope
of algorithmic computability to Turing
computability should thus not state
that every possible algorithmic process
can be performed by a Turing machine.
The way to express the thesis is to say
the extensional input-output function
ια associated with an algorithm α is al-
ways Turing-computable; ια is simply
the extensional mapping of α’s inputs
to α’s outputs. The algorithm the Tur-
ing machine uses to compute ια might
be very different from α itself. A ques-
tion then naturally arises: If an algo-
rithmic process need not be one a Tur-
ing machine can carry out, save in the
weak sense just mentioned, then where
do the boundaries of this concept lie?
What indeed is an algorithm?
The dominant view in computer sci-
ence is that, ontologically speaking, al-
gorithms are abstract entities; however,
there is debate about what abstract en-
tities algorithms are. Gurevich defined
the concept in terms of abstract-state
machines, Yiannis Moschovakis in
terms of abstract recursion, and Noson
Yanofsky in terms of equivalence class-
es of programs, while Moshe Vardi has
speculated that an algorithm is both
abstract-state machine and recursor. It
is also debated whether an algorithm
must be physically implementable. Mos-
chovakis and Vasilis Paschalis (among
others) adopt a concept of algorithm “so
wide as to admit ‘non-implementable’
algorithms,”30 while other approaches
do impose a requirement of physical im-
plementability, even if only a very mild
one. David Harel, for instance, writes:
[A]ny algorithmic problem for which we
can find an algorithm that can be pro-
grammed in some programming lan-
guage, any language, running on some
computer, any computer, even one that
has not been built yet but can be built
… is also solvable by a Turing machine.
This statement is one version of the so-
called Church/Turing thesis.”23
Steering between these debates—
and following Harel’s suggestion that
the algorithms of interest to computer
science are always expressible in pro-
gramming languages—we arrive at the
following program-oriented formula-
tion of the algorithmic thesis:
CTT-Algorithm (CTT-A). Every algo-
rithm can be expressed by means of a
program in some (not necessarily cur-
rently existing) Turing-equivalent pro-
gramming language.
There is an option to narrow CTT-A
by adding “physically implementable”
before “program,” although in our view
this would be to lump together two dis-
tinct computational issues that are bet-
ter treated separately.
The evolving nature and open-end-
edness of the concept of an algorithm is
matched by a corresponding open-end-
edness in the concept of a programming
language. But this open-endedness not-
withstanding, CTT-A requires that all
algorithms be bounded by Turing com-
putability.
Later in this article we examine com-
plexity-theoretic and physical versions
of the Church-Turing thesis but first
turn to the question of the justification
of the theses introduced so far. Are CTT-
O and CTT-A correct?
What Justifies the
Church-Turing Thesis?
Stephen Kleene—who coined the term
“Church-Turing thesis”—catalogued
four types of argument for CTT-O: First,
description of a certain human activ-
ity—numerical computation; in Tur-
ing’s day computation was carried out
by rote workers called “computers,” or,
sometimes, “computors”; see, for exam-
ple, Turing.37 The Church-Turing thesis
is about computation as the term was
used in 1936—human computation.
Church’s term “effectively calculable
function” was intended to refer to func-
tions that are calculable by an idealized
human computer; and, likewise, Tur-
ing’s phrase “numbers which would
naturally be regarded as computable”
was intended to refer to those numbers
that could be churned out, digit by digit,
by an idealized human computer work-
ing ceaselessly.
Here, then, is our formulation of
the historical version of the Church-
Turing thesis, as informed by Turing’s
proof of the equivalence of his and
Church’s theses:
CTT-Original (CTT-O). Every function
that can be computed by the idealized
human computer, which is to say, can
be effectively computed, is Turing-com-
putable.
Some mathematical logicians view
CTT-O as subject ultimately to either
mathematical proof or mathemati-
cal refutation, like open mathematical
conjectures, as in the Riemann hypoth-
esis, while others regard CTT-O as not
amenable to mathematical proof but
supported by philosophical arguments
and an accumulation of mathematical
evidence. Few logicians today follow
Church in regarding CTT-O as a defini-
tion. We subscribe to Turing’s view of
the status of CTT-O, as we outline later.
In computer science today, algo-
rithms and effective procedures are, of
course, associated not primarily with
humans but with machines. (Note, while
some expositors might distinguish be-
tween the terms “algorithm” and “ef-
fective procedure,” we use the terms in-
terchangeably.) Many computer science
textbooks formulate the Church-Turing
thesis without mentioning human com-
puters at all; examples include the well-
known books by Hopcroft and Ullman24
and Lewis and Papadimitriou.29 This is
despite the fact that the concept of hu-
man computation was at the heart of
both Turing’s and Church’s analysis of
computation.
We discuss several important mod-
ern forms of the Church-Turing thesis,
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M
M U N I C AT I O N S O F T H E A C M 69
contributed articles
employs the Schönfinkel-Curry idea of
“combinators” in order to axiomatize
the concept of an algorithmic function.)
Fourth in this catalog of consider-
ations supporting CTT-O are arguments
from first-order logic. They are typified
by a 1936 argument of Church’s and
by Turing’s argument II, from Section
9 of Turing’s 1936 paper. In 2013, Saul
Kripke28 presented a reconstruction
of Turing’s argument II, which goes as
follows: Computation is a special form
of mathematical deduction; and every
mathematical deduction—and there-
fore every computation—can be formal-
ized as a valid deduction in the language
of first-order predicate logic with iden-
tity (a step Kripke referred to as “Hil-
bert’s thesis”); following Gödel’s com-
pleteness theorem, each computation
is thus formalized by a provable formula
of first-order logic; and every computa-
tion can therefore be carried out by the
universal Turing machine. This last step
regarding the universal Turing machine
is secured by a theorem proved by Tur-
ing: Every provable formula of first-order
logic can be proved by the universal Tur-
ing machine.
The third and fourth of these argu-
ments provide justification for CTT-O
but not for CTT-A. As Robin Gandy20
pointed out, the third argument—Tur-
ing’s I—contains “crucial steps … where
he [Turing] appeals to the fact that the
calculation is being carried out by a hu-
man being.”20 For example, Turing as-
sumed “a human being can only write
one symbol at a time,” and Gandy noted
this assumption cannot be carried over
to a parallel machine that “prints an ar-
bitrary number of symbols simultane-
ously.”20 In Conway’s Game of Life, for
instance, there is no upper bound on
the number of cells that make up the
grid, yet the symbols in all the cells are
updated simultaneously. Likewise, the
fourth argument (Turing’s II) involves
the claim that computation is a special
form of formal proof, but the notion of
proof is intrinsically related to what a
human mathematician—and not some
oracle—can prove.
It is thus perhaps not too surprising
that the third and fourth arguments
in this catalog seldom if ever appear in
logic and computer science textbooks.
The two arguments that are always given
for the Church-Turing thesis (in, for ex-
ample, Lewis and Papadimitriou29) are
the argument from non-refutation
points out the thesis has never been
refuted, despite sustained (and ongo-
ing) attempts to find a counterexample
(such as the attempts by László Kalmár
and, more recently, by Doukas Kapan-
tais). Second, the argument from con-
fluence points to the fact that the vari-
ous characterizations of computability,
while differing in their approaches and
formal details, turn out to encompass
the very same class of computable func-
tions. Four such characterizations were
presented (independently) in 1936 and
immediately proved to be extension-
ally equivalent: Turing computability,
Church’s λ-definability, Kleene’s recur-
sive functions, and Post’s finitary com-
binatory processes.
Third is an argument usually re-
ferred to nowadays as “Turing’s analy-
sis.” Turing called it simply argument
“I,” stating five very general and intui-
tive constraints—or axioms—the hu-
man computer may be assumed to
satisfy: “The behavior of the computer
at any moment is determined by the
symbols which he is observing, and his
‘state of mind’ at that moment”; “[T]
here is a bound B to the number of sym-
bols or squares which the computer
can observe at one moment”; “[E]ach
of the new observed squares is within
L squares of an immediately previously
observed square”; “[I]n a simple op-
eration not more than one symbol is
altered”; and “[T]he number of states
of mind which need be taken into ac-
count is finite.” Turing noted that refer-
ence to the computer’s states of mind
can be avoided by talking instead about
configurations of symbols, these being
“a more definite and physical counter-
part” of states of mind.36
The second part of Turing’s argu-
ment I is a demonstration that each
function computed by any human com-
puter subject to these constraints is also
computable by a Turing machine; it is
not difficult to see that each of the com-
puter’s steps can be mimicked by the
Turing machine, either in a single step
or by means of a series of steps. In short,
Turing’s five axioms entail CTT-O. (Tur-
ing’s axiomatic approach to comput-
ability was in fact foreshadowed by Kurt
Gödel in a suggestion to Church a year or
so earlier.15 Some more recent axiomatic
approaches to computability proceed
differently; for example, Erwin Engeler
The Turing machine
is restricted to,
say, changing at
most one bounded
part at each
sequential step
of a computation.
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
70 C O M M U N I C AT I O N S O F T H E A C M | J A
N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1
contributed articles
is whether these axioms completely
capture the concept of a computational
or algorithmic process, and, so far as
we see, no one has ever given a rigor-
ous mathematical justification of that
claim. The axioms may be supported
by informal arguments, but the whole
edifice then falls short of mathemati-
cal proof. This is most apparent when
the informal arguments offered for the
axioms invoke limitations in the cogni-
tive capacities of human computers, as
we point out elsewhere.13 A justification
of the second axiom may, for instance,
refer to the limitations of human ob-
servation. The axioms most certainly
lie beyond the scope of mathematical
demonstration if their truth depends on
contingent human limitations. Turing
himself cheerfully appealed to cognitive
limitations in the course of his analysis,
saying, for example, “[J]ustification lies
in the fact that the human memory is
necessarily limited.”36
In summary, our answer to “Is CTT-
O mathematically provable?” is: Turing
thought not and we have found no rea-
son to disagree with him. The various
historical arguments seem more than
sufficient to establish CTT-O, but these
arguments do indeed fall short of math-
ematical proof.
We next address complexity theoretic
forms of the Church-Turing thesis, then
turn to the question of whether CTT-A is
justified in the context of physically real-
istic computations.
Complexity: The Extended
Church-Turing Thesis
It is striking that the Turing machine
holds a central place not only in com-
putability theory but also in complexity
theory, where it is viewed as a universal
model for complexity classes.
In complexity theory, the time com-
plexities of any two general and rea-
sonable models of computation are as-
sumed to be polynomially related. But
what counts as “reasonable”? Aharonov
and Vazirani1 glossover “reasonable” as
“physically realizable in principle”; see
also Bernstein and Vazirani.3 If a com-
putational problem’s time complexity is
t in some (general and reasonable) mod-
el, then its time complexity is assumed
to be poly(t) in the single-tape Turing
machine model; see also Goldreich.21
This assumption has different names
in the literature; Goldreich21 called it the
confluence and non-refutation. Yet both
those arguments are merely inductive,
whereas the third and fourth arguments
are deductive in nature.
However, a number of attempts have
sought to extend Turing’s axiomatic
analysis to machine computation; for
example, Gandy20 broadened Turing’s
analysis in such a way that parallel com-
putation is included, while Dershowitz
and Gurevich16 gave a more general anal-
ysis in terms of abstract state machines.
We return to the topic of extending the
analysis to machine computation later
in this article but first address the im-
portant question of whether CTT-O is
mathematically provable.
Is the Thesis
Mathematically Provable?
It used to be thought by mathematical
logicians and others that CTT-O is not
amenable to formal proof, since it is not
a mathematically precise statement.
This is because it pairs an informal
concept—a “vague intuitive notion,”
Church called it5—with a precise con-
cept. However, Elliott Mendelson gave
a powerful critique of this general argu-
ment; and today the view that CTT-O is
formally provable seems to be gaining
acceptance; see, for example, Dershow-
itz and Gurevich.16 Inspired by Gandy,20
Wilfried Sieg35 stated that a tightened
form of Turing’s argument I proves the
thesis; and Kripke28 entertained the
same claim for Turing’s argument II.
Turing’s own view was that, on the
contrary, his thesis is not susceptible
to mathematical proof. He thought his
arguments I and II, and indeed “[a]ll
arguments which can be given” for the
thesis, are “fundamentally, appeals to
intuition, and for this reason rather un-
satisfactory mathematically.”36 Hilbert’s
thesis is another example of a proposi-
tion that can be justified only by appeal
to intuition, and so Kripke’s28 tightened
form of argument II, far from proving
CTT-O, merely deduced it from another
thesis that is also not amenable to math-
ematical proof.
Much the same can be said about ar-
gument I. If axioms 1–5 are formulated
in precise mathematical terms, then it is
certainly provable from them that com-
putation is bounded by Turing comput-
ability; this is probably what Gandy20
meant when he said Turing’s argument
I proves a “theorem.” But the real issue
Turing’s own view
was that, on the
contrary, his thesis
is not susceptible to
mathematical proof.
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M
M U N I C AT I O N S O F T H E A C M 71
contributed articles
binary sequence; Church showed such
sequences are uncomputable, as we
discussed elsewhere.8 Moreover, specu-
lation that there may be deterministic
physical processes whose behavior can-
not be calculated by the universal Tur-
ing machine stretches back over several
decades; for a review, see Copeland.9 In
1981, Pour-El and Richards34 showed
that a system evolving from computable
initial conditions in accordance with
the familiar three-dimensional wave
equation is capable of exhibiting be-
havior that falsifies CTT-P; even today,
however, it is an open question whether
these initial conditions are physically
possible. Earlier papers, from the 1960s,
by Bruno Scarpellini, Arthur Komar,
and Georg Kreisel, in effect questioned
CTT-P, with Kreisel stating: “There is no
evidence that even present-day quan-
tum theory is a mechanistic, i.e., recur-
sive theory in the sense that a recur-
sively described system has recursive
behavior.”27 Other potential counterex-
amples to CTT-P have been described
by a number of authors, including what
are called “relativistic” machines. First
introduced by Pitowsky,32 they will be
examined in the section called “Relativ-
istic Computation.”
CTT-P and Quantum Mechanics
There are a number of theoretical coun-
termodels to CTT-P arising from quan-
tum mechanics. For example, in 1964,
Komar26 raised “the issue of the macro-
scopic distinguishability of quantum
states,” asserting there is no effective
procedure “for determining whether
two arbitrarily given physical states can
be superposed to show interference ef-
fects.” In 2012, Eisert et al.19 showed
“[T]he very natural physical problem of
determining whether certain outcome
sequences cannot occur in repeated
quantum measurements is undecid-
able, even though the same problem
for classical measurements is readily
decidable.” This is an example of a prob-
lem that refers unboundedly to the fu-
ture but not to any specific time. Other
typical physical problems take the same
form; Pitowsky gave as examples “Is the
solar system stable?” and “Is the mo-
tion of a given system, in a known initial
state, periodic?”
Cubitt et al.14 described another such
undecidability result in a 2015 Nature
article, outlining their proof that “[T]he
Cobham-Edmonds thesis, while Yao40
introduced the term “Extended Church-
Turing thesis.” The thesis is of interest
only if P ≠ NP, since otherwise it is trivial.
Quantum-computation researchers
also use a variant of this thesis, as ex-
pressed in terms of probabilistic Turing
machines. Bernstein and Vazirani3 said:
“[C]omputational complexity theory
rests upon a modern strengthening of
[the Church-Turing] thesis, which as-
serts that any ‘reasonable’ model of
computation can be efficiently simulat-
ed on a probabilistic Turing machine.”3
Aharonov and Vazirani1 give the fol-
lowing formulation of this assumption,
naming it the “Extended Church-Turing
thesis”—though it is not quite the same
as Yao’s earlier thesis of the same name,
which did not refer to probabilistic Tur-
ing machines:
CTT-Extended (CTT-E). “[A]ny reason-
able computational model can be simu-
lated efficiently by the standard model
of classical computation, namely, a
probabilistic Turing machine.”1
As is well known in computer science,
Peter Shor’s quantum algorithm for
prime factorization is a potential coun-
terexample to CTT-E; the algorithm runs
on a quantum computer in polynomial
time and is much faster than the most-
efficient known “classical” algorithm
for the task. But the counterexample is
controversial. Some computer scientists
think the quantum computer invoked
is not a physically reasonable model of
computation, while others think accom-
modating these results might require
further modifications to complexity
theory.
We turn now to extensions of the
Church-Turing thesis into physics.
Physical Computability
The issue of whether every aspect of the
physical world is Turing-computable
was broached by several authors in the
1960s and 1970s, and the topic rose to
prominence in the mid-1980s.
In 1985, Stephen Wolfram formu-
lated a thesis he described as “a physical
form of the Church-Turing hypothesis,”
saying, “[U]niversal computers are as
powerful in their computational capaci-
ties as any physically realizable system
can be, so that they can simulate any
physical system.”39 In the same year, Da-
vid Deutsch, who laid the foundations of
quantum computation, independently
stated a similar thesis, describing it as
“the physical version of the Church-
Turing principle.”17 The thesis is now
known as the Church-Turing-Deutsch
thesis and the Church-Turing-Deutsch-
Wolfram thesis.
Church-Turing-Deutsch-Wolfram the-
sis (CTDW). Every finite physical system
can be simulated to any specified de-
gree of accuracy by a universal Turing
machine.
Deutsch pointed out that if “simu-
lated” is understood as “perfectly simu-
lated,” then the thesis is falsified by con-
tinuous classical systems, since such
classical systems necessarily involve un-
computable real numbers, and went on
to introduce the concept of a universal
quantum computer, saying such a com-
puter is “capable of perfectly simulating
every finite, realizable physical system.”
Other physical formulations were ad-
vanced by Lenore Blum et al., John Ear-
man, Itamar Pitowsky, Marian Pour-El,
and Ian Richards, among others.
We next formulate a strong version
of the physical Church-Turing thesis we
call the “total physical computability
thesis.” (We consider some weaker ver-
sions later in the article.) By “physical
system” we mean any system whose be-
havior is in accordance with the actual
laws of physics, including non-actual
and idealized systems.
Total physical computability thesis
(CTT-P). Every physical aspect of the
behavior of any physical system can be
calculated (to any specified degree of ac-
curacy) by a universal Turing machine.
As with CTT-E, there is also a proba-
bilistic version of CTT-P, formulated in
terms of a probabilistic Turing machine.
Arguably, the phrase “physical ver-
sion of the Church-Turing thesis” is an
inappropriate name for this and related
theses, since CTT-O concerns a form of
effective or algorithmic activity and as-
serts the activity is always bounded by
Turing computability, while CTT-P and
CTDW, on the other hand, entail that
the activity of every physical system is
bounded by Turing computability; the
system’s activity need not be algorith-
mic/effective at all. Nevertheless, in our
“CTT-” nomenclature, we follow the
Deutsch-Wolfram tradition throughout
this article.
Is CTT-P true? Not if physical systems
include systems capable of producing
unboundedly many digits of a random
12oclockscholar
Highlight
72 C O M M U N I C AT I O N S O F T H E A C M | J A
N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1
contributed articles
admitted the model invoked in their
proof is highly artificial, saying, “Wheth-
er the results can be extended to more
natural models is yet to be determined.”
There is also the question of whether the
spectral gap problem becomes comput-
able when only local Hilbert spaces of
realistically low dimensionality are con-
sidered. Nevertheless, these results are
certainly suggestive: CTT-P cannot be
taken for granted, even in a finite quan-
tum universe.
Summarizing the current situa-
tion with respect to CTT-P, we can say,
although theoretical countermodels
in which CTT-P is false have been de-
scribed, there is at present—so far as
we know—not a shred of evidence that
CTT-P is false in the actual universe. Yet
it would seem most premature to assert
that CTT-P is true.
Weaker Physical
Computability Theses
Piccinini31 has distinguished between
two different types of physical versions
of the Church-Turing thesis, both com-
monly found in the literature, describ-
ing them as “bold” and “modest” ver-
sions of the thesis, respectively. The
bold and modest versions are weaker
than our “super-bold” version just dis-
cussed (CTT-P). Bold versions of the
thesis state, roughly, that “Any physical
process can be simulated by some Tur-
ing machine.”31 The Church-Turing-
Deutsch-Wolfram thesis (CTDW) is an
example, though Piccinini emphasized
that the bold versions proposed by dif-
ferent researchers are often “logically
independent of one another” and that,
unlike the different formulations of
CTT-O, which exhibit confluence, the
different bold formulations in fact ex-
hibit “lack of confluence.”31
CTDW and other bold forms are too
weak to rule out the uncomputabil-
ity scenarios described by Cubitt et al.14
and by Eisert et al.19 This is because the
physical processes involved in these
scenarios may, so far as we know, be
Turing-computable; it is possible that
each process can be simulated by a Tur-
ing machine, to any required degree
of accuracy, and yet the answers to cer-
tain physical questions about the pro-
cesses are, in general, uncomputable.
The situation is similar in the case of
the universal Turing machine itself. The
machine’s behavior (consisting of the
physical actions of the read/write head)
is always Turing-computable since it is
produced by the Turing machine’s pro-
gram, yet the answers to some questions
about the behavior (such as whether or
not the machine halts given certain in-
puts) are not computable.
Nevertheless, bold forms (such as
CTDW) are interesting empirical hy-
potheses in their own right and the
world might confute them. For in-
stance, CTDW fails in the wave-equa-
tion countermodel due to Pour-El and
Richards34 where the mapping between
the wave equation’s “inputs” and “out-
puts” is not a Turing-computable (real)
function; although, as noted earlier, the
physicality of this countermodel can
readily be challenged. We discuss some
other potential countermodels later in
the article, but turn first to what Picci-
nini termed “modest” versions of the
thesis.
Modest versions maintain in es-
sence that every physical computing
process is Turing-computable; for two
detailed formulations, see Gandy20 and
Copeland.8 Even if CTT-P and CTDW
are in general false, the behavior of the
subset of physical systems that are ap-
propriately described as computing sys-
tems may nevertheless be bounded by
Turing-computability. An illustration of
the difference between modest versions
on the one hand and CTT-P and CTDW
on the other is given by the fact that the
wave-equation example is not a counter-
model to the modest thesis, assuming,
as seems reasonable, that the physical
dynamics described by the equation do
not constitute a computing process.
Here, we formulate a modest version
of the physical Church-Turing thesis we
call the “Physical Computation” thesis,
then turn to the question of whether it
is true.
spectral gap problem is algorithmically
undecidable: There cannot exist any al-
gorithm that, given a description of the
local interactions, determines whether
the resultant model is gapped or gap-
less.” Cubitt et al. also said this is the
“first undecidability result for a major
physics problem that people would re-
ally try to solve.”
The spectral gap, an important deter-
minant of a material’s properties, refers
to the energy spectrum immediately
above the ground-energy level of a quan-
tum many-body system, assuming a
well-defined least-energy level of the sys-
tem exists; the system is said to be “gap-
less” if this spectrum is continuous and
“gapped” if there is a well-defined next-
least energy level. The spectral gap prob-
lem for a quantum many-body system is
the problem of determining whether the
system is gapped or gapless, given the fi-
nite matrices (at most three) describing
the local interactions of the system.
In their proof, Cubitt et al.14 encoded
the halting problem in the spectral gap
problem, showing the latter is at least as
hard as the former. The proof involves
an infinite family of two-dimensional
lattices of atoms. But they pointed out
their result also applies to finite systems
whose size increases, saying, “Not only
can the lattice size at which the system
switches from gapless to gapped be arbi-
trarily large, the threshold at which this
transition occurs is uncomputable.”
Their proof offers an interesting coun-
termodel to CTT-P, involving a physical-
ly relevant example of a finite system of
increasing size. There exists no effective
method for extrapolating the system’s
future behavior from (complete descrip-
tions of) its current and past states.
It is debatable whether any of these
quantum models correspond to real-
world quantum systems. Cubitt et al.14
Relationships between the three physical computability theses:
CTT-P, CTDW, and CTT-P-C.
Physical computability theses
super-bold
bold
modest
CTT-P
CTDW
CTTP-P-C
Total Physical Computability Thesis
Church-Turing-Deutsch-Wolfram Thesis
Physical Computation Thesis
12oclockscholar
Highlight
J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M
M U N I C AT I O N S O F T H E A C M 73
contributed articles
nal will have been received by TO before
time t. So TO will fall into the black hole
with 1 in its output cell if TE halted and
0 if TE never halted. Fortunately, TO can
escape annihilation if its trajectory is
carefully chosen in advance, says Néme-
ti; the rotational forces of the Kerr hole
counterbalance the gravitational forces
that would otherwise “spaghettify” TO.
TO thus emerges unscathed from the
hole and goes on to use the computed
value of the halting function in further
computations.
Németi and colleagues emphasize
their machine is physical in the sense
it is “not in conflict with presently ac-
cepted scientific principles” and, in par-
ticular, “the principles of quantum me-
chanics are not violated.”2 They suggest
humans might “even build” a relativistic
computer “sometime in the future.”2
This is, of course, highly controversial.
However, our point is that Németi’s the-
oretical countermodel, which counters
not only CTT-P-C but also CTT-P and
CTDW, helps underscore that the “phys-
ical version of the Church-Turing thesis”
is quite independent of CTT-O, since the
countermodel stands whether or not
CTT-O is endorsed. We next reconsider
CTT-A.
CTT-A and Computation in the Broad
The continuing expansion of the con-
cept of an algorithm is akin to the exten-
sion of the concept of number from inte-
gers to signed integers to rational, real,
and complex numbers. Even the con-
cept of human computation underwent
an expansion; before 1936, computation
was conceived of in terms of total func-
tions, and it was Kleene in 1938 who ex-
plicitly extended the conception to also
cover partial functions.
Gurevich argued in 2012 that formal
methods cannot capture the algorithm
concept in its full generality due to the
concept’s open-ended nature; at best,
formal methods provide treatments of
“strata of algorithms” that “have ma-
tured enough to support rigorous defi-
nitions.”22 An important question for
computer science is whether CTT-A is
a reasonable constraint on the growth
of new strata. Perhaps not. In 1982,
Jon Doyle18 suggested equilibrating
systems with discrete spectra (such as
molecules and other quantum many-
body systems) illustrate a concept of
effectiveness that is broader than the
Physical Computation Thesis
This form of the thesis maintains that
physical computation is bounded by
Turing-computability.
Physical computation thesis (CTT-P-C).
Every function computed by any physi-
cal computing system is Turing-com-
putable.
Is CTT-P-C true? As with the stronger
physical computability theses, it seems
too early to say. CTT-P-C could be false
only if CTT-P and CTDW turn out to be
false, since each of them entails CTT-P-
C (see the figure here, which outlines the
relationships among CTT-P, CTDW, and
CTT-P-C). If all physical computation
is effective in the 1930s sense of Turing
and Church, then CTT-P-C is certainly
true. If, however, the door is open to a
broadened sense of computation, where
physical computation is not necessarily
effective in the sense of being bounded
by Turing-computability, then CTT-P-C
makes a substantive claim.
There is, in fact, heated debate
among computer scientists and phi-
losophers about what counts as physi-
cal computation. Moreover, a number
of attempts have sought to describe a
broadened sense of computation in
which computation is not bounded
by Turing-computability; see, for ex-
ample, Copeland.6 Computing ma-
chines that compute “beyond the Tur-
ing limit” are known collectively as
“hypercomputers,” a term introduced
in Copeland and Proudfoot.11 Some of
the most thought-provoking examples
of notional machines that compute in
the broad sense are called “supertask”
machines. These “Zeno computers”
squeeze infinitely many computational
steps into a finite span of time. Exam-
ples include accelerating machines,7,12
shrinking machines, and the intrigu-
ing relativistic computers described in
the next section.
Notional machines all constitute
rather theoretical countermodels to
CTT-P-C, so long as it is agreed that
they compute in a broadened sense, but
none has been shown to be physically
realistic, although, as we explain, rela-
tivistic computers come close. In short,
the truth or falsity of CTT-P-C remains
unsettled.
Relativistic Computation
Relativistic machines operate in space-
time structures with the property that
the entire endless lifetime of one com-
ponent of the machine is included in
the finite chronological past of another
component, called “the observer.” The
first component could thus carry out an
infinite computation (such as calculat-
ing every digit of π) in what is, from the
observer’s point of view, a finite times-
pan of, say, one hour. (Such machines
are in accord with Einstein’s general the-
ory of relativity, hence the term “relativ-
istic.”) Examples of relativistic compu-
tation have been detailed by Pitowsky,
Mark Hogarth, and Istvan Németi.
In this section we outline a relativistic
machine RM consisting of a pair of com-
municating Turing machines, TE and
TO, in relative motion. TE is a universal
machine, and TO is the observer. RM is
able to compute the halting function, in
a broad sense of computation. Speaking
of computation here seems appropriate,
since RM consists of nothing but two
communicating Turing machines.
Here is how RM works. When the in-
put (m,n), asking whether the mth Tur-
ing machine (in some enumeration
of the Turing machines) halts or not
when started on input n, enters TO, TO
first prints 0 (meaning “never halts”)
in its designated output cell and then
transmits (m,n) to TE. TE simulates the
computation performed by the mth Tur-
ing machine when started on input
n and sends a signal back to TO if and
only if the simulation terminates. If
TO receives a signal from TE, TO deletes
the 0 it previously wrote in its output
cell and writes 1 in its place (meaning
“halts”). After one hour, TO’s output
cell shows 1 if the mth Turing machine
halts on input n and shows 0 if the mth
machine does not halt on n.
The most physically realistic version
of this setup to date is due to Németi and
his collaborators in Budapest. TE, an or-
dinary computer, remains on Earth,
while the observer TO travels toward and
enters a slowly rotating Kerr black hole.
TO approaches the outer event horizon,
a bubble-like hypersurface surrounding
the black hole. Németi theorized that
the closer TO gets to the event horizon,
the faster TE’s clock runs relative to TO
due to Einsteinian gravitational time di-
lation, and this speeding up continues
with no upper limit. TO motion proceeds
until, relative to a time t on TO clock, the
entire span of TE’s computing is over.
If any signal was emitted by TE, the sig-
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
74 C O M M U N I C AT I O N S O F T H E A C M | J A
N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1
contributed articles
Conclusion
In the computational literature the term
“Church-Turing thesis” is applied to a
variety of different propositions usu-
ally not equivalent to the original the-
sis—CTT-O; some even go far beyond
anything either Church or Turing wrote.
Several but not all are fundamental as-
sumptions of computer science. Others
(such as the various physical comput-
ability theses we have discussed) are im-
portant in the philosophy of computing
and the philosophy of physics but are
highly contentious; indeed, the label
“Church-Turing thesis” should not mis-
lead computer scientists or anyone else
into thinking they are established fact
or even that Church or Turing endorsed
them.
References
1. Aharonov, D. and Vazirani, U.V. Is quantum mechanics
falsifiable? A computational perspective on the
foundations of quantum mechanics. Chapter in
Computability: Gödel, Turing, Church and Beyond, B.J.
Copeland, C.J. Posy, and O. Shagrir, Eds. MIT Press,
Cambridge, MA, 2013.
2. Andréka, H., Németi, I., and Németi, P. General relativistic
hypercomputing and foundation of mathematics. Natural
Computing 8, 3 (Sept. 2009), 499–516.
3. Bernstein, E. and Vazirani, U. Quantum complexity
theory. SIAM Journal on Computing 26, 5 (Oct. 1997),
1411–1473.
4. Castelvecchi, D. Paradox at the heart of mathematics
makes physics problem unanswerable. Nature 528
(Dec. 9, 2015), 207.
5. Church, A. An unsolvable problem of elementary
number theory. American Journal of Mathematics 58,
2 (Apr. 1936), 345–363.
6. Copeland, B.J. The broad conception of computation.
American Behavioral Scientist 40, 6 (May 1997),
690–716.
7. Copeland, B.J. Even Turing machines can compute
uncomputable functions. Chapter in Unconventional
Models of Computation, C. Calude, J. Casti, and M.
Dinneen, Eds. Springer, Singapore, 1998.
8. Copeland, B.J. Narrow versus wide mechanism:
Including a re-examination of Turing’s views on the
mind-machine issue. The Journal of Philosophy 97, 1
(Jan. 2000), 5–32.
9. Copeland, B.J. Hypercomputation. Minds and Machines
12, 4 (Nov. 2002), 461–502.
10. Copeland, B.J. The Essential Turing: Seminal Writings
in Computing, Logic, Philosophy, Artificial Intelligence,
and Artificial Life, Plus the Secrets of Enigma. Oxford
University Press, Oxford, U.K., 2004.
11. Copeland, B.J. and Proudfoot, D. Alan Turing’s
forgotten ideas in computer science. Scientific
American 280, 4 (Apr. 1999), 98–103.
12. Copeland, B.J. and Shagrir, O. Do accelerating Turing
machines compute the uncomputable? Minds and
Machines 21, 2 (May 2011), 221–239.
13. Copeland, B.J. and Shagrir, O. Turing versus Gödel on
computability and the mind. Chapter in Computability:
Gödel, Turing, Church, and Beyond, B.J. Copeland,
C.J. Posy, and O. Shagrir, Eds. MIT Press, Cambridge,
MA, 2013.
14. Cubitt, T.S., Perez-Garcia, D., and Wolf, M.M.
Undecidability of the spectral gap. Nature 528, 7581
(Dec. 2015), 207–211.
15. Davis, M. Why Gödel didn’t have Church’s thesis.
Information and Control 54, 1-2 (July 1982), 3–24.
16. Dershowitz, N. and Gurevich, Y. A natural
axiomatization of computability and proof of Church’s
thesis. Bulletin of Symbolic Logic 14, 3 (Sept. 2008),
299–350.
17. Deutsch, D. Quantum theory, the Church-Turing
principle and the universal quantum computer.
Proceedings of the Royal Society of London A:
Mathematical, Physical and Engineering Sciences 400,
1818 (July 1985), 97–117.
18. Doyle, J. What is Church’s thesis? An outline. Minds
and Machines 12, 4 (Nov. 2002), 519–520.
19. Eisert, J., Müller, M.P., and Gogolin, C. Quantum
measurement occurrence is undecidable. Physical
Review Letters 108, 26 (June 2012), 1–5.
20. Gandy, R.O. Church’s thesis and principles for
mechanisms. In Proceedings of the Kleene
Symposium, J. Barwise, H.J. Keisler, and K. Kunen,
Eds. (Madison, WI, June 1978). North-Holland,
Amsterdam, Netherlands, 1980.
21. Goldreich, O. Computational Complexity: A Conceptual
Perspective. Cambridge University Press, New York, 2008.
22. Gurevich, Y. What is an algorithm? In Proceedings of
the 38th Conference on Current Trends in the Theory
and Practice of Computer Science (Špindleůrv Mlýn,
Czech Republic, Jan. 21–27), M. Bieliková, G. Friedrich,
G. Gottlob, S. Katzenbeisser, and G. Turán, Eds.
Springer, Berlin, Heidelberg, Germany, 2012.
23. Harel, D. Algorithmics: The Spirit of Computing,
Second Edition. Addison-Wesley, Reading, MA, 1992.
24. Hopcroft, J.E. and Ullman, J.D. Introduction to
Automata Theory, Languages, and Computation.
Addison-Wesley, Reading, MA, 1979.
25. Kleene, S.C. Introduction to Metamathematics. Van
Nostrand, New York, 1952.
26. Komar, A. Undecidability of macroscopically
distinguishable states in quantum field theory.
Physical Review 133, 2B (Jan. 1964), 542–544.
27. Kreisel, G. Mathematical logic: What has it done for
the philosophy of mathematics? Chapter in Bertrand
Russell: Philosopher of the Century, R. Schoenman, Ed.
Allen and Unwin, London, U.K., 1967.
28. Kripke, S.A. Another approach: The Church-Turing
‘thesis’ as a special corollary of Gödel’s completeness
theorem. Chapter in Computability: Gödel, Turing,
Church, and Beyond, B.J. Copeland, C.J. Posy, and O.
Shagrir, Eds. MIT Press, Cambridge, MA, 2013.
29. Lewis, H.R. and Papadimitriou, C.H. Elements of the
Theory of Computation. Prentice Hall, Upper Saddle
River, NJ, 1981.
30. Moschovakis, Y.N. and Paschalis, V. Elementary
algorithms and their implementations. Chapter in New
Computational Paradigms: Changing Conceptions of
What Is Computable, S.B. Cooper, B. Lowe, and A.
Sorbi, Eds. Springer, New York, 2008.
31. Piccinini, G. The physical Church-Turing thesis: Modest
or bold? The British Journal for the Philosophy of
Science 62, 4 (Aug. 2011), 733–769.
32. Pitowsky, I. The physical Church thesis and physical
computational complexity. Iyyun 39, 1 (Jan. 1990), 81–99.
33. Post, E.L. Finite combinatory processes: Formulation
I. The Journal of Symbolic Logic 1, 3 (Sept. 1936),
103–105.
34. Pour-El, M.B. and Richards, I.J. The wave equation
with computable initial data such that its unique
solution is not computable. Advances in Mathematics
39, 3 (Mar. 1981), 215–239.
35. Sieg, W. Mechanical procedures and mathematical
experience. Chapter in Mathematics and Mind, A.
George, Ed. Oxford University Press, New York, 1994.
36. Turing, A.M. On computable numbers, with an
application to the Entscheidungsproblem (1936); in
Copeland.10
37. Turing, A.M. Lecture on the Automatic Computing
Engine (1947); in Copeland.10
38. Turing, A.M. Intelligent Machinery (1948); in
Copeland.10
39. Wolfram, S. Undecidability and intractability in
theoretical physics. Physical Review Letters 54, 8 (Feb.
1985), 735–738.
40. Yao, A.C.C. Classical physics and the Church-Turing
thesis. Journal of the ACM 50, 1 (Jan. 2003), 100–105.
B. Jack Copeland ([email protected]) is
Distinguished Professor of Philosophy at the University of
Canterbury in Christchurch, New Zealand, and Director of
the Turing Archive for the History of Computing, also at
the University of Canterbury.
Oron Shagrir ([email protected]) is Schulman
Professor of Philosophy and Cognitive Science at the
Hebrew University of Jerusalem, Jerusalem, Israel.
Copyright held by the authors.
Publication rights licensed to ACM. $15.00
classical concept, saying, “[E]quilibrat-
ing can be so easily, reproducibly, and
mindlessly accomplished” that we may
“take the operation of equilibrating as
an effective one,” even if “the functions
computable in principle given Turing’s
operations and equilibrating include
non-recursive functions.”
Over the years, there have been sever-
al departures from Turing’s 1936 analy-
sis, as the needs of computer science
led to a broadening of the algorithm
concept. For example, Turing’s fourth
axiom, which bounds the number of
parts of a system that can be changed
simultaneously, became irrelevant
when the algorithm concept broadened
to cover parallel computations. The fu-
ture computational landscape might
conceivably include more extensive re-
visions of the concept, if, for example,
physicists were to discover that hard-
ware effective in Doyle’s extended sense
is a realistic possibility.
If such hardware were to be devel-
oped—hardware in which operations
are effective in the sense of being “eas-
ily, reproducibly, and mindlessly ac-
complished” but not bounded by Turing
computability—then would the appro-
priate response by computer scientists
be to free the algorithm concept from
CTT-A? Or should CTT-A remain as a
constraint on algorithms, with instead
two different species of computation be-
ing recognized, called, say, algorithmic
computation and non-algorithmic com-
putation? Not much rides on a word, but
we note we prefer “effective computa-
tion” for computation that is bounded
by Turing computability and “neo-ef-
fective computation” for computation
that is effective in Doyle’s sense and not
bounded by Turing computability, with
“neo” indicating a new concept related
to an older one.
The numerous examples of notional
“hypercomputers” (see Copeland9 for
a review) prompt similar questions. In-
terestingly, a study of the expanding lit-
erature about the concept of an infinite-
time Turing machine, introduced by
Joel Hamkins and Andy Lewis in 2000,
shows that a number of computer sci-
entists are prepared to describe the in-
finite-time machine as computing the
halting function. Perhaps this indicates
the concept of computation is already
in the process of bifurcating into “effec-
tive” and “neo-effective” computation.
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
12oclockscholar
Highlight
Turing Machines
Chapter 17
Languages and Machines
SD
D
Context-Free
Languages
Regular
Languages
reg exps
FSMs
cfgs
PDAs
unrestricted grammars
Turing Machines
SD Language
Unrestricted Grammar
Turing Machine
L
Accepts
Grammars, SD Languages, and Turing Machines
Turing Machines
Can we come up with a new kind of automaton that has two
properties:
● powerful enough to describe all computable things
unlike FSMs and PDAs.
● simple enough that we can reason formally about it
like FSMs and PDAs,
unlike real computers.
Turing Machines
At each step, the machine must:
● choose its next state,
● write on the current square, and
● move left or right.
A Formal Definition
● K is a finite set of states;
a
subset.
(K -
non-
state char char (R or L)
Notes on the Definition
1. The input tape is infinite in both directions.
deterministic Turing machines.
a halting state.
4. Turing machines do not necessarily halt (unlike FSM's and
PDAs). Why? To halt, they must enter a halting state.
Otherwise they loop.
5. Turing machines generate output so they can compute
functions.
An Example
M takes as input a string in the language:
and adds b’s as required to make the number of b’s equal the
number of a’s.
The input to M will look like this:
The output should be:
The Details
s = 1,
Notes on Programming
The machine has a strong procedural feel, with one phase
coming after another.
There are common idioms, like scan left until you find a blank
There are two common ways to scan back and forth marking
things off.
Often there is a final phase to fix up the output.
Even a very simple machine is a nuisance to write.
Halting
● A DFSM M, on input w, is guaranteed to halt in |w| steps.
● A PDA M, on input w, is not guaranteed to halt. To see
why, consider again M =
But there exists an algorithm to construct an equivalent PDA
A TM M, on input w, is not guaranteed to halt. And there exists
no algorithm to construct one that is guaranteed to do so.
Formalizing the Operation
A configuration of a Turing machine
- - {q}))
state up scanned after
to scanned square scanned
square square
Example Configurations
(1) (q, ab, b, b) = (q, abbb)
(2) = (q, qaabb)
Initial configuration is (s, qw).
Yields
(q1, w1) |-
step.
For any TM M, let |-M* be the reflexive, transitive closure of |-
M.
Configuration C1 yields configuration C2 if: C1 |-M* C2.
A path through M is a sequence of configurations C0, C1, …,
C0 |-M C1 |-M C2 |-M … |-M Cn.
A computation by M is a path that halts.
If a computation is of length n or has n steps, we write:
C0 |-Mn Cn
A Notation for Turing Machines
(1) Define some basic machines
● Symbol writing machines
that writes x.
● Head moving machines
R:
L: f
● Machines that simply halt:
h, which simply halts.
n, which halts and rejects.
y, which halts and accepts.
Next we need to describe how to:
● Check the tape and branch based on what character
we see, and
● Combine the basic machines to form larger ones.
To do this, we need two forms:
● M1 M2
● M1 <condition> M2
Checking Inputs and Combining Machines
A Notation for Turing Machines, Cont'd
Example:
>M1 a M2
b
M3
● Start in the start state of M1.
● Compute until M1 reaches a halt state.
● Examine the tape and take the appropriate transition.
● Start in the start state of the next machine, etc.
● Halt if any component reaches a halt state and has no place
to go.
● If any component fails to halt, then the entire machine may
fail
to halt.
a
M1 M2 becomes M1 a, b M2
b
becomes M1 M2
or
M1M2
Variables
becomes
except a and x takes on the value of
the current square
M1 a, b M2 becomes
and x takes on the value of
the current square
M1 x = y M2
if x = y then take the transition
if the current square is not blank,
go right and copy it.
Shorthands
Some Useful Machines
Find the first blank square to
the right of the current square.
Find the first blank square to
the left of the current square.
Find the first nonblank square to
the right of the current square.
Find the first nonblank square to
the left of the current square
Rq
Lq
More Useful Machines
La Find the first occurrence of a to
the left of the current square.
Ra,b Find the first occurrence of a or b
to the right of the current square.
La,b a M1 Find the first occurrence of a or b
to the left of the current square,
b then go to M1 if the detected
character is a; go to M2 if the
M2 detected character is b.
Find the first occurrence of a or b
to the left of the current square
and set x to the value found.
Find the first occurrence of a or b
to the left of the current square,
set x to the value found, move one
square to the right, and write x (a or b).
An Example
Input: {1}*
Output: qw3
Example: q111qqqqqqqqqqqqqq
Input: quqwq
Output: quwq
Example: qbaqabbaqqqqqqqqqqqq
Turing Machines as Language Recognizers
Convention: We will write the input on the tape as:
qwq, w contains no qs
The initial configuration of M will then be:
(s, qw)
● M accepts a string w iff (s, qw) |-
● M rejects a string w iff (s, qw) |-
Turing Machines as Language Recognizers
For any string w
A language L is decidable iff there is a Turing machine M that
decides it. In this case, we will say that L is in D.
A Deciding Example
Example: qaabbccqqqqqqqqq
Example: qaaccbqqqqqqqqq
Another Deciding Example
Example: qabbcabbqqq
Example: qacabbqqq
Semideciding a Language
M may either:
reject or
fail to halt.
A language L is semidecidable iff there is a Turing machine that
semidecides it. We define the set SD to be the set of all
semidecidable languages.
Example of Semideciding
We can build M to semidecide L:
1. Loop
1.1 Move one square to the right. If the character under
the read head is an a, halt and accept.
In our macro language, M is:
Example of Semideciding
Loop:
1.1 Move one square to the right.
1.2 If the character under the read/write head is
an a, halt and accept.
1.3 If it is q, halt and reject.
In our macro language, M is:
Computing Functions
qw).
Define M(w) = z iff (s, qw) |-M* (h, qz).
L
● If w is an input on which f is defined: M(w) = f(w).
● Otherwise M(w) does not halt.
A function f is recursive or computable iff there is a Turing
machine M that computes it and that always halts.
Example of Computing a Function
Input: qwqqqqqq Output: qwwq
Define the copy machine C:
qwqwq
e:
quwq
Example of Computing a Function
Input: qwqqqqqq Output: qwwq
Define the copy machine C:
qwqwq
quwq
2.unknown
Computing Numeric Functions
For any positive integer k, valuek(n) returns the nonnegative
integer that is encoded, base k, by the string n.
For example:
● value2(101) = 5.
● value8(101) = 65.
TM M computes a function f from ℕm to ℕ iff, for some k:
valuek(M(n1;n2;…nm)) = f(valuek(n1), … valuek(nm)).
Computing Numeric Functions
Example: succ(n) = n + 1
Input: qnqqqqqq Output: qn+1q
q1111qqqq Output: q10000q
Computing Numeric Functions
Example: succ(n) = n + 1
Input: qnqqqqqq Output: qn+1q
q1111qqqq Output: q10000q
Not All Functions Are Computable
Let T be the set of all TMs that:
● Halt on a blank tape.
● S(n): the maximum number of steps that are executed by
any element of
T with n-nonhalting states, when started on a blank tape,
before it halts.
by any element
of T with n-nonhalting states, when it halts.
Why Are We Working with Our Hands Tied Behind Our Backs?
Turing machines Are more powerful than any of
the other formalisms we have
studied so far.
Turing machines Are a lot harder to work with than
all the real computers we have
available.
Why bother?
The very simplicity that makes it hard to program Turing
machines makes it possible to reason formally about what they
can do. If we can, once, show that anything a real computer can
do can be done (albeit clumsily) on a Turing machine, then we
have a way to reason about what real computers can do.
The Chomsky Hierarchy
and Beyond
Chapter 24
Is There Anything In Between PDAs and Turing Machines?
PDAs aren’t powerful enough.
Turing machines lack even a decision procedure for the
acceptance problem.
Linear Bounded Automata
A linear bounded automaton is an NDTM the length of whose
tape is equal to |w| + 2.
Example:
qaabbccqqqqqqqqq
Linear Bounded Automata
A language is context sensitive iff there exists an LBA that
accepts it.
Note: It is not known whether, for every nondeterministic LBA
there exists an equivalent deterministic one.
The Membership Question for LBAs
Let L = {<B, w> : LBA B accepts w}. Is L in D?
… q a b b a q …
q0
How many distinct configurations of B exist?
The Membership Question for LBAs
Let L = {<B, w> : LBA B accepts w}. Is L in D?
… q a b b a q …
q0
How many distinct configurations of B exist?
The Membership Question for LBAs
Theorem: L = {<B, w> : LBA B accepts w} is in D.
Proof: If B runs for more than MaxConfig steps, it is in a loop
and it is not going to halt.
M is an NDTM that decides L:
M(<B, w>) =
1. Simulate all paths of B on w for MaxConfig steps or
until
B halts, whichever comes first.
2. If any path accepted, accept. Else reject.
Since, from each configuration of B there are a finite number of
branches and each branch is of finite length, M will be able to
try
all branches of B in a finite number of steps. M will accept the
string <B, w> if any path of B accepts and it will reject the
string
<B, w> if every path of B on w either rejects or loops.
Grammars, Context-Sensitive Languages, and LBAs
CS Language
Grammar
LBA
L
Accepts
Context-Sensitive Grammars and Languages
A context-
grammar in which R satisfies the following constraints:
● The left-hand side of every rule contains at least one
nonterminal symbol.
● No length-reducing rules, with one exception:
Consider:
/* length reducing
Context-Sensitive Grammars and Languages
A context-
grammar in which R satisfies the following constraints:
● The left-hand side of every rule contains at least one
nonterminal symbol.
● No length-reducing rules, with one exception:
If it does, then S does not occur on the right hand side
of any rule.
Context-Sensitive Grammars and Languages
Example of a grammar that is not context-sensitive:
An equivalent, context-sensitive grammar:
Context-Sensitive Grammars and Languages
Example of a grammar that is not context-sensitive:
An equivalent, context-sensitive grammar:
AnBnCn
/* Not a CS rule
AnBnCn
Not a CS grammar. But there is an equivalent one that isolates
the epsilon rule at the beginning.
Equal Numbers of a’s, b’s, and c’s
Again, not a CS grammar. But easy to fix.
WW =
/* Generate the wall exactly once.
/* Generate wCwR.
/* Generate a pusher P
/* Push one character to the right
to get ready to jump.
b
/* Hop a character over the wall.
WW
Not a CS grammar. Harder to fix because it’s no longer
possible to erase the pushers and the C. So they have to be
encoded as part of another symbol.
The Membership Question for Context-Sensitive Grammars
Let L = {<G, w> : csg G generates string w}. Is L in D?
Example:
L = {<G, w> : CSG G generates string w} is in D.
Proof: We construct an NDTM M to decide D. M will explore
all
derivations that G can produce starting with S. Eventually one
of
the following things must happen on every derivation path:
● G will generate w.
● G will generate a string to which no rules can be applied.
● G will keep generating strings of the same length. Since
there
are a finite number of strings of a given length, G must
eventually
generate the same one twice. The path can be terminated
since
it is not getting any closer to generating w.
● G will generate a string s that is longer than w.
Since G has only a finite number of choices at each derivation
step
and since each path that is generated must eventually halt, the
Turing machine M that explores all derivation paths will
eventually
halt. If at least one path generates w, M will accept. If no path
generates w, M will reject.
Context-Sensitive Languages and Linear Bounded Automata
Theorem: The set of languages that can be generated by a
context-sensitive grammar is identical to the class that can
be accepted by an LBA.
Proof: (sketch)
● Given a CSG G, build a two-track LBA B such that
L(B) = L(G). On input w, B keeps w on the first track. On
the second track, it nondeterministically constructs all
derivations of G. As soon as any derivation becomes
longer than |w|, stop.
● From any LBA B, construct a CSG that simulates B.
Languages and Machines
SD
D
Context-sensitive
Context-free
DCF
Regular
FSMs
DPDAs
NDPDAs
LBAs
Turing machines
Theorem: The CS languages are a proper subset of D.
Proof: We divide the proof into two parts:
● Every CS language is in D: Every CS language L is
accepted by some LBA B. The Turing machine that
performs a bounded simulation of B decides L.
● There exists at least one language that is in D but that is
not context-sensitive: It is not easy to do this by actually
exhibiting such a language. But we can use
diagonalization
to show that one exists.
Context-Sensitive Languages vs. D
Using Diagonalization
Create an encoding for context-sensitive grammars:
EnumG is the lexicographic enumeration of all encodings of
Enuma,b is the lexicographic enumeration of {a, b}*.
Because {<G, w> : CSG G generates string w}, is in D, there
exists
a TM that can compute the values in this table as they are
needed.String 1String 2String 3String 4String 5…….Grammar
11 0000…..Grammar 201 000…..Grammar 3110
00…..Grammar 40010 0….. …11100…..
Diagonalization, Continued
● Recursive because it is decided by the following Turing
machine M:
M(x) =
1. Find x in the list Enuma,b. Let its index be i.
2. Lookup cell (i, i) in the table.
3. If the value is 0, x is not in L(Gi) so x is in L. Accept.
4. If the value is 1, x is in L(Gi) so x is not in L. Reject.
● Not context-sensitive because it differs, in the case of at least
one string, from every language in the table and so is not
generated by any context-sensitive grammar.
Theorem: The context-free languages are a proper subset of the
context-sensitive languages.
Proof: We divide the proof into two parts:
● We know one language, AnBnCn, that is context-sensitive
but
not context-free.
● If L is a context-free language then there exists some
context-free
gr
–
-reducing rules, so is a CSG.
● -sensitive grammar and it generates
L.
● So L is a context-sensitive language.
Context-Sensitive vs Context-Free
The context-sensitive languages are closed under:
● Union
● Concatenation
● Kleene star
● Intersection
● Complement
Closure Properties
Theorem: The CSLs are closed under union.
L(G2):
If L1 and L2 are CSLs, then there exist CSGs:
R2, S2) such that L1 = L(G1) and L2 = L(G2).
Rename the nonterminals of G1 and G2 so that they are disjoint
and neither includes the symbol S.
G will contain all the rules of both G1 and G2. Add to G a new
start symbol, S, and two new rules:
S S2.
R1 S2}, S).
Closure Under Union
Theorem: The CSLs are closed under concatenation.
Proof: By construction of a CSG G such that L(G) = L(G1)
L(G2):
If L1 and L2 are CSLs, then
= L(G2).
Let G contain all the rules of G1 and G2. Then add a new start
S2.
Problem:
S
S1 S2
a a A a a a
The subtrees may interact.
Closure Under Concatenation
rules in R are of one of the following two forms:
-
-
is not in nonterminal normal form.
is not in nonterminal normal form.
Nonterminal Normal Form
Theorem: Given a CSG G, there exists an equivalent
nonterminal
Proof: The proof is by construction.
converttononterminal(G: CSG) =
symbol
3. Modify each of the original rules so that every occurrence
of a
terminal symbol c is replaced by the nonterminal symbol
Tc.
Nonterminal Normal Form
becomes
becomes
S
S1 S2
a a A a a a
Now the subtrees will be:
Closure Under Concatenation
S
S1 S2
a a A Ta a a
We prevent them from interacting by standardizing apart the
nonterminals.
To build a grammar G such that L(G) = L(G1) L(G2), we do the
following:
1. Convert both G1 and G2 to nonterminal normal form.
2. If necessary, rename the nonterminals of G1 and G2 so
that the two sets are disjoint and so that neither includes
the symbol S.
R1 S2}, S).
Concatenation, Continued
The membership problem is decidable, although no efficient
procedure is known.
Other questions are not:
● Is L empty?
● Is the intersection of two CSLs empty?
● Are two CSLs equal?
Decision Procedures
The Chomsky Hierarchy
The idea: constrain rule firing by:
● defining features that can be passed up/down in parse
trees, and
● describing feature-value constraints that must be
satisfied before the rules can be applied.
Attribute, Feature and Unification Grammars
G will exploit one feature, size.
G = ({S, A, B, C, a, b, c},{a, b, c}, R, S), where:
R = { (size(A) = size(B) = size(C))
Applying G bottom up:
aaabbbccc
AnBnCn
* The bear like chocolate.
[ CATEGORY NP [ CATEGORY VP
PERSON THIRD PERSON THIRD
NUMBER SINGULAR] NUMBER SINGULAR]
Replace atomic terminal symbols like bear, with:
[ CATEGORY N
LEX bear
PERSON THIRD
NUMBER SINGULAR]
A Unification Grammar for Subject/Verb Agreement
[ CATEGORY NP [ CATEGORY VP
NUMBER x1 NUMBER x1
PERSON x2 ] PERSON x2 ]
So an NP and a VP can be combined to form an S iff they have
matching values for their NUMBER and PERSON features.
A Unification Grammar for Subject/Verb Agreement
An L-
constants,
to which no rules will apply,
● R is a set of rules,
in order
for the rule to fire. If they are equ
checked.
fires.
Lindenmayer Systems
Rules Fire in Parallel
Using a standard grammar:
Given: A S a B B a
B S a B B a
B S a Ca B a etc.
Using an L-system:
Given: A S a B B a
B F a Ha Ha a
L-system-interpret(G: L-system) =
1. Set working-
2. Do forever:
2.1 Output working-string.
2.2 new-working-string
2.3 For each character c in working-string do:
If possible, choose a rule r whose left-hand side
matches c and where c’s neighbors (in
working-string) satisfy any context constraints
included in r.
If a rule r was found, concatenate its right-hand
side
to the right end of new-working-string.
If none was found, concatenate c to the right end
of
new-working-string.
2.4 working-string = new-working-string.
A Lindenmayer System Interpreter
Let G be the L-system defined as follows:
The sequence of strings generated by G begins:
0. I
1. M
2. M I
3. M I M
4. M I M M I
5. M I M M I M I M
6. M I M M I M I M M I M M I
An Example
Assume:
● It takes one time step for each rabbit to reach maturity and
mate.
● The gestation period of rabbits is one time step.
● We begin with one pair of (immature) rabbits.
The Fibonacci sequence:
Fibonacci0 = 1.
Fibonacci1 = 1.
For n > 1, Fibonaccin = Fibonnacin-1 + Fibonnacin-2.
The L-system model:
● Each I corresponds to one immature pair of rabbits.
● Each M corresponds to one mature pair.
● Each string is the concatenation of its immediately
preceding
string (the survivors) with the string that preceded it two
steps
back (the breeders).
Fibonacci’s Rabbits
0. I
1. M
2. M I
3. M I M
4. M I M M I
5. M I M M I M I M
6. M I M M I M I M M I M M I
Fibonacci’s Rabbits
Let G be the L-system defined as follows:
-}.
– A – B,
Notice that + and – are constants. The sequence of strings
generated by G begins:
1. A
2. B – A – B
3. A + B + A – B – A – B – A + B + A
4. B – A – B + A + B + A + B – A – B – A + B + A – B –
A – B – A + B + A – B – A – B + A +
B + A + B – A – B
Sierpinski Triangle
● Choose a line length k.
● A and B mean move forward, drawing a line of length k.
● –
Strings 3, 4, 8, and 10 then correspond to turtle programs that
can draw the following sequence of figures (scaling k
appropriately):
Interpreting Strings as Drawing Programs
Sierpinski Triangles
Let G be the L-system defined as follows:
–, [, ]}.
R = { – F ] F [ + F ] [ F ] }.
The sequence of strings generated by G begins:
1. F
2. F [ – F ] F [ + F ] [ F ]
3. F [ – F ] F [ + F ] [ F ] [ – F [ – F ] F [ + F ] [ F ] ]
F [ – F ] F [ + F ] [ F ] [ + F [ – F ] F
[ + F ] [ F ] ] [ F [ – F ] F [ + F ] [ F ] ]
Modelling Plant Growth
We can interpret these strings as turtle programs by choosing a
line
follows:
● F means move forward, drawing a line of length k.
● –
● [ means push the current pen position and direction onto the
stack.
● ] means pop the top pen position/direction off the stack, lift
up the
pen, move it to the position that is now on the top of the
stack, put it
back down, and set its direction to the one on the top of the
stack.
3. F [ – F ] F [ + F ] [ F ] [ – F [ – F ] F [ + F ] [ F ] ]
F [ – F ] F [ + F ] [ F ] [ + F [ – F ] F
[ + F ] [ F ] ] [ F [ – F ] F [ + F ] [ F ] ]
Interpreting Strings as Drawing Programs
Trees
Trees
1.bin
Real Plants
http://algorithmicbotany.org/papers/#abop
These two images from the main page:
http://algorithmicbotany.org/papers/#abop
Let G be the L-system defined as follows:
R = {
Sierpinski Triangles, Again
Theorem: Context-sensitive L-systems and Turing machines can
simulate each other.
Proof: The computation of any L-system can be simulated by a
Turing machine that implements the algorithm L-system-
interpret.
So it remains to show the other direction, by construction.
We show that deterministic TM M, on input w, halts in some
halting state q and with tape contents v iff L-system L
converges
to the static string qv.
Define L as follows:
nd
h, plus
one distinct symbol for each nonhalting state of M. Assume
that 0
encodes M’s start state.
Equivalence of Context-Sensitive
L-Systems and Turing Machines
qq0qwqq.
Let the rules of L encode M’s transitions. The action of a
Turing
machine is very local. Consider:
ga4bcde.
The read/write head can move one square and the character
under it
can change. To decide how to rewrite some character in the
working
string, it is sufficient to look at one character to its left and two
to its
right. If there is no state symbol in that area, the symbol gets
rewritten
as itself (no rule needed). For all other combinations, add to R
rules
that cause the system to behave as M behaves. Finally, add
rules so
that, if h, y, or n is generated, it will be pushed all the way to
the left,
leaving the rest of the string unchanged. Add no other rules to
R.
L will converge to qv iff M halts, in state q, with v on its tape.
Defining L, Continued
IN SD OUT
Semideciding TM H Memory: infinite
unconstrained
D
Deciding TM anbncn Diagonalize
Memory: |w|, or
infinite unconstrained
Context-Free Pumping
Closure
CF grammar anbn Memory:
infinite
PDA stack
Closure
Regular
Regular Expression a*b* Pumping
FSM
Closure
Finite Memory: none
Onion Diagram/Chomsky Hierarchy
Semideciding a Language
Let SM be the input alphabet to a TM M. Let L Í SM*.
M semidecides L iff, for any string w Î SM*:
● w Î L ® M accepts w
● w Ï L ® M does not accept w. M may either:
reject or
fail to halt.
A language L is semidecidable iff there is a Turing machine that
semidecides it. SD is the set of all semidecidable languages,
and is the outermost ring on the onion diagram. The SD
languages are also called the recursively enumerable languages,
more about enumerability later.
M decides L iff, for any string w Î SM*:
● w Î L ® M accepts w
● w Ï L ® M rejects w.
A language L is decidable iff there is a Turing machine that
decides it. D is the set of all decidable languages, and is the
next ring in from SD on the onion diagram. The D languages are
also called the recursive languages.
Given L ∈ D, is L ∈ SD?
• Sample language hierarchy questions that could easily appear
on an exam:
T/F If L contains a finite number of elements then it must be
semidecidable.
Because all finite languages are RLS, and if L ∈ RLs then L ∈
SD
However, our focus is on the D and SD languages involving
string encodings of TMs, and whose characteristic function
defines the behavior of the encoded machine.
T/F L ∈ SD → L ∈ D
Because D ⊂ SD. We will prove that there is a language L such
that L ∈ SD and L ∉ D.
Are We Done?
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx
L {M,s  s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx

More Related Content

Similar to L {M,s s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx

Acheiving greater effeciency from your accounts payables.ppt
Acheiving greater effeciency from your accounts payables.pptAcheiving greater effeciency from your accounts payables.ppt
Acheiving greater effeciency from your accounts payables.ppt
MohamedElmahgoub2
 
ICC Broadband Presintation
ICC Broadband PresintationICC Broadband Presintation
ICC Broadband Presintation
ICCBroadband
 
Duplicate Payments Analysis - FTSE250 construction company
Duplicate Payments Analysis - FTSE250 construction companyDuplicate Payments Analysis - FTSE250 construction company
Duplicate Payments Analysis - FTSE250 construction company
Alex Psarras
 
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
Running head RECOVERY & SUPPORT GROUPS          14RE.docxRunning head RECOVERY & SUPPORT GROUPS          14RE.docx
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
todd581
 
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
Running head RECOVERY & SUPPORT GROUPS          14RE.docxRunning head RECOVERY & SUPPORT GROUPS          14RE.docx
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
jeanettehully
 
Cash management services
Cash management servicesCash management services
Cash management services
Ajitesh Srivastava
 
5. Core Banking System
5. Core Banking System5. Core Banking System
5. Core Banking System
Ashish Desai
 
Shorten the O2C cycle with digital invoicing and payments
Shorten the O2C cycle with digital invoicing and paymentsShorten the O2C cycle with digital invoicing and payments
Shorten the O2C cycle with digital invoicing and payments
Emagia
 
AccessPay Direct Debit Management Solution
AccessPay Direct Debit Management SolutionAccessPay Direct Debit Management Solution
AccessPay Direct Debit Management Solution
AccessPay
 
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
eprentise
 
sunil CV new
sunil CV newsunil CV new
sunil CV new
sunil veetil
 
Janhvi_singh_resume_24-Aug-2016
Janhvi_singh_resume_24-Aug-2016Janhvi_singh_resume_24-Aug-2016
Janhvi_singh_resume_24-Aug-2016
JANHVI SINGH
 
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
AbhayAdekar1
 
cogon-AutoBank-EN
cogon-AutoBank-ENcogon-AutoBank-EN
cogon-AutoBank-EN
Matthias Löhle
 
Software Engineering Testing & Research
Software Engineering Testing & Research Software Engineering Testing & Research
Software Engineering Testing & Research
Vrushali Lanjewar
 
Mca titles
Mca titlesMca titles
Mca titles
tema_solution
 
Mca titles
Mca titlesMca titles
Mca titles
tema_solution
 
Mca titles
Mca titlesMca titles
Mca titles
Soundar Msr
 
Mca titles
Mca titlesMca titles
Mca titles
tema_solution
 
Mca titles
Mca titlesMca titles
Mca titles
tema_solution
 

Similar to L {M,s s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx (20)

Acheiving greater effeciency from your accounts payables.ppt
Acheiving greater effeciency from your accounts payables.pptAcheiving greater effeciency from your accounts payables.ppt
Acheiving greater effeciency from your accounts payables.ppt
 
ICC Broadband Presintation
ICC Broadband PresintationICC Broadband Presintation
ICC Broadband Presintation
 
Duplicate Payments Analysis - FTSE250 construction company
Duplicate Payments Analysis - FTSE250 construction companyDuplicate Payments Analysis - FTSE250 construction company
Duplicate Payments Analysis - FTSE250 construction company
 
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
Running head RECOVERY & SUPPORT GROUPS          14RE.docxRunning head RECOVERY & SUPPORT GROUPS          14RE.docx
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
 
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
Running head RECOVERY & SUPPORT GROUPS          14RE.docxRunning head RECOVERY & SUPPORT GROUPS          14RE.docx
Running head RECOVERY & SUPPORT GROUPS 14RE.docx
 
Cash management services
Cash management servicesCash management services
Cash management services
 
5. Core Banking System
5. Core Banking System5. Core Banking System
5. Core Banking System
 
Shorten the O2C cycle with digital invoicing and payments
Shorten the O2C cycle with digital invoicing and paymentsShorten the O2C cycle with digital invoicing and payments
Shorten the O2C cycle with digital invoicing and payments
 
AccessPay Direct Debit Management Solution
AccessPay Direct Debit Management SolutionAccessPay Direct Debit Management Solution
AccessPay Direct Debit Management Solution
 
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
EBS Answers Webinar Series - Ace your Audit: Preparing Your Oracle E-Business...
 
sunil CV new
sunil CV newsunil CV new
sunil CV new
 
Janhvi_singh_resume_24-Aug-2016
Janhvi_singh_resume_24-Aug-2016Janhvi_singh_resume_24-Aug-2016
Janhvi_singh_resume_24-Aug-2016
 
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
_FMO_CMS Reverse KT Template_Prakah_Abhay.pptx
 
cogon-AutoBank-EN
cogon-AutoBank-ENcogon-AutoBank-EN
cogon-AutoBank-EN
 
Software Engineering Testing & Research
Software Engineering Testing & Research Software Engineering Testing & Research
Software Engineering Testing & Research
 
Mca titles
Mca titlesMca titles
Mca titles
 
Mca titles
Mca titlesMca titles
Mca titles
 
Mca titles
Mca titlesMca titles
Mca titles
 
Mca titles
Mca titlesMca titles
Mca titles
 
Mca titles
Mca titlesMca titles
Mca titles
 

More from croysierkathey

1.  Discuss the organization and the family role in every one of the.docx
1.  Discuss the organization and the family role in every one of the.docx1.  Discuss the organization and the family role in every one of the.docx
1.  Discuss the organization and the family role in every one of the.docx
croysierkathey
 
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
croysierkathey
 
1.Purpose the purpose of this essay is to spread awareness .docx
1.Purpose the purpose of this essay is to spread awareness .docx1.Purpose the purpose of this essay is to spread awareness .docx
1.Purpose the purpose of this essay is to spread awareness .docx
croysierkathey
 
1.  Tell us why it is your favorite film.2.  Talk about the .docx
1.  Tell us why it is your favorite film.2.  Talk about the .docx1.  Tell us why it is your favorite film.2.  Talk about the .docx
1.  Tell us why it is your favorite film.2.  Talk about the .docx
croysierkathey
 
1.What are the main issues facing Fargo and Town Manager Susan.docx
1.What are the main issues facing Fargo and Town Manager Susan.docx1.What are the main issues facing Fargo and Town Manager Susan.docx
1.What are the main issues facing Fargo and Town Manager Susan.docx
croysierkathey
 
1.Writing Practice in Reading a PhotographAttached Files.docx
1.Writing Practice in Reading a PhotographAttached Files.docx1.Writing Practice in Reading a PhotographAttached Files.docx
1.Writing Practice in Reading a PhotographAttached Files.docx
croysierkathey
 
1.Some say that analytics in general dehumanize managerial activitie.docx
1.Some say that analytics in general dehumanize managerial activitie.docx1.Some say that analytics in general dehumanize managerial activitie.docx
1.Some say that analytics in general dehumanize managerial activitie.docx
croysierkathey
 
1.What is the psychological term for the symptoms James experiences .docx
1.What is the psychological term for the symptoms James experiences .docx1.What is the psychological term for the symptoms James experiences .docx
1.What is the psychological term for the symptoms James experiences .docx
croysierkathey
 
1.Write at least 500 words discussing the benefits of using R with H.docx
1.Write at least 500 words discussing the benefits of using R with H.docx1.Write at least 500 words discussing the benefits of using R with H.docx
1.Write at least 500 words discussing the benefits of using R with H.docx
croysierkathey
 
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
croysierkathey
 
1.  Discuss the cultural development of the Japanese and the Jewis.docx
1.  Discuss the cultural development of the Japanese and the Jewis.docx1.  Discuss the cultural development of the Japanese and the Jewis.docx
1.  Discuss the cultural development of the Japanese and the Jewis.docx
croysierkathey
 
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
croysierkathey
 
1.Write at least 500 words in APA format discussing how to use senti.docx
1.Write at least 500 words in APA format discussing how to use senti.docx1.Write at least 500 words in APA format discussing how to use senti.docx
1.Write at least 500 words in APA format discussing how to use senti.docx
croysierkathey
 
1.The following clause was added to the Food and Drug Actthe S.docx
1.The following clause was added to the Food and Drug Actthe S.docx1.The following clause was added to the Food and Drug Actthe S.docx
1.The following clause was added to the Food and Drug Actthe S.docx
croysierkathey
 
1.What are social determinants of health  Explain how social determ.docx
1.What are social determinants of health  Explain how social determ.docx1.What are social determinants of health  Explain how social determ.docx
1.What are social determinants of health  Explain how social determ.docx
croysierkathey
 
1.This week, we’ve been introduced to the humanities and have ta.docx
1.This week, we’ve been introduced to the humanities and have ta.docx1.This week, we’ve been introduced to the humanities and have ta.docx
1.This week, we’ve been introduced to the humanities and have ta.docx
croysierkathey
 
1.What are barriers to listening2.Communicators identif.docx
1.What are barriers to listening2.Communicators identif.docx1.What are barriers to listening2.Communicators identif.docx
1.What are barriers to listening2.Communicators identif.docx
croysierkathey
 
1.Timeline description and details There are multiple way.docx
1.Timeline description and details There are multiple way.docx1.Timeline description and details There are multiple way.docx
1.Timeline description and details There are multiple way.docx
croysierkathey
 
1.The PresidentArticle II of the Constitution establishe.docx
1.The PresidentArticle II of the Constitution establishe.docx1.The PresidentArticle II of the Constitution establishe.docx
1.The PresidentArticle II of the Constitution establishe.docx
croysierkathey
 
1.What other potential root causes might influence patient fal.docx
1.What other potential root causes might influence patient fal.docx1.What other potential root causes might influence patient fal.docx
1.What other potential root causes might influence patient fal.docx
croysierkathey
 

More from croysierkathey (20)

1.  Discuss the organization and the family role in every one of the.docx
1.  Discuss the organization and the family role in every one of the.docx1.  Discuss the organization and the family role in every one of the.docx
1.  Discuss the organization and the family role in every one of the.docx
 
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
1.  Compare and contrast DEmilios Capitalism and Gay Identity .docx
 
1.Purpose the purpose of this essay is to spread awareness .docx
1.Purpose the purpose of this essay is to spread awareness .docx1.Purpose the purpose of this essay is to spread awareness .docx
1.Purpose the purpose of this essay is to spread awareness .docx
 
1.  Tell us why it is your favorite film.2.  Talk about the .docx
1.  Tell us why it is your favorite film.2.  Talk about the .docx1.  Tell us why it is your favorite film.2.  Talk about the .docx
1.  Tell us why it is your favorite film.2.  Talk about the .docx
 
1.What are the main issues facing Fargo and Town Manager Susan.docx
1.What are the main issues facing Fargo and Town Manager Susan.docx1.What are the main issues facing Fargo and Town Manager Susan.docx
1.What are the main issues facing Fargo and Town Manager Susan.docx
 
1.Writing Practice in Reading a PhotographAttached Files.docx
1.Writing Practice in Reading a PhotographAttached Files.docx1.Writing Practice in Reading a PhotographAttached Files.docx
1.Writing Practice in Reading a PhotographAttached Files.docx
 
1.Some say that analytics in general dehumanize managerial activitie.docx
1.Some say that analytics in general dehumanize managerial activitie.docx1.Some say that analytics in general dehumanize managerial activitie.docx
1.Some say that analytics in general dehumanize managerial activitie.docx
 
1.What is the psychological term for the symptoms James experiences .docx
1.What is the psychological term for the symptoms James experiences .docx1.What is the psychological term for the symptoms James experiences .docx
1.What is the psychological term for the symptoms James experiences .docx
 
1.Write at least 500 words discussing the benefits of using R with H.docx
1.Write at least 500 words discussing the benefits of using R with H.docx1.Write at least 500 words discussing the benefits of using R with H.docx
1.Write at least 500 words discussing the benefits of using R with H.docx
 
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
1.What is Starbucks’ ROA for 2012, 2011, and 2010 Why might focusin.docx
 
1.  Discuss the cultural development of the Japanese and the Jewis.docx
1.  Discuss the cultural development of the Japanese and the Jewis.docx1.  Discuss the cultural development of the Japanese and the Jewis.docx
1.  Discuss the cultural development of the Japanese and the Jewis.docx
 
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
1.  Discuss at least 2  contextual factors(family, peers,  school,.docx
 
1.Write at least 500 words in APA format discussing how to use senti.docx
1.Write at least 500 words in APA format discussing how to use senti.docx1.Write at least 500 words in APA format discussing how to use senti.docx
1.Write at least 500 words in APA format discussing how to use senti.docx
 
1.The following clause was added to the Food and Drug Actthe S.docx
1.The following clause was added to the Food and Drug Actthe S.docx1.The following clause was added to the Food and Drug Actthe S.docx
1.The following clause was added to the Food and Drug Actthe S.docx
 
1.What are social determinants of health  Explain how social determ.docx
1.What are social determinants of health  Explain how social determ.docx1.What are social determinants of health  Explain how social determ.docx
1.What are social determinants of health  Explain how social determ.docx
 
1.This week, we’ve been introduced to the humanities and have ta.docx
1.This week, we’ve been introduced to the humanities and have ta.docx1.This week, we’ve been introduced to the humanities and have ta.docx
1.This week, we’ve been introduced to the humanities and have ta.docx
 
1.What are barriers to listening2.Communicators identif.docx
1.What are barriers to listening2.Communicators identif.docx1.What are barriers to listening2.Communicators identif.docx
1.What are barriers to listening2.Communicators identif.docx
 
1.Timeline description and details There are multiple way.docx
1.Timeline description and details There are multiple way.docx1.Timeline description and details There are multiple way.docx
1.Timeline description and details There are multiple way.docx
 
1.The PresidentArticle II of the Constitution establishe.docx
1.The PresidentArticle II of the Constitution establishe.docx1.The PresidentArticle II of the Constitution establishe.docx
1.The PresidentArticle II of the Constitution establishe.docx
 
1.What other potential root causes might influence patient fal.docx
1.What other potential root causes might influence patient fal.docx1.What other potential root causes might influence patient fal.docx
1.What other potential root causes might influence patient fal.docx
 

Recently uploaded

How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17
Celine George
 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
nitinpv4ai
 
Pharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brubPharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brub
danielkiash986
 
Haunted Houses by H W Longfellow for class 10
Haunted Houses by H W Longfellow for class 10Haunted Houses by H W Longfellow for class 10
Haunted Houses by H W Longfellow for class 10
nitinpv4ai
 
220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx
Kalna College
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
MJDuyan
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
giancarloi8888
 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
blueshagoo1
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
Nguyen Thanh Tu Collection
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
Prof. Dr. K. Adisesha
 
BPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end examBPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end exam
sonukumargpnirsadhan
 
MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025
khuleseema60
 
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxA Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
OH TEIK BIN
 
How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17
Celine George
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
سمير بسيوني
 
How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
Celine George
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
EduSkills OECD
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
zuzanka
 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
deepaannamalai16
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
Celine George
 

Recently uploaded (20)

How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17
 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
 
Pharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brubPharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brub
 
Haunted Houses by H W Longfellow for class 10
Haunted Houses by H W Longfellow for class 10Haunted Houses by H W Longfellow for class 10
Haunted Houses by H W Longfellow for class 10
 
220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
 
BPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end examBPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end exam
 
MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025
 
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxA Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
 
How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
 
How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
 

L {M,s s ∈ L(M), L(M) = 2}. Prove that L ∉ SD by a reduc.docx

  • 1. L {<M,s> : s ∈ L(M), |L(M)| = 2}. Prove that L ∉ SD by a reduction from ¬H} R(<M,w>) = 1. Define M#(x): 1.a If x = a or x = b accept 1.b Save x 1.b Replace x with w 1.c Run M on w 1.d Restore x 1.e Accept x 2. Return <M#,a> If there were an Oracle Mₒ that could semidecide L, then C = Mₒ(R(<M,w>)) = Mₒ(<M#,a>) could semidecide ¬H: <M,w> ∈ ¬H: M# would accept a and b at 1.a, and then loop forever at 1.c. Thus L(M#) = {a,b}, and Mₒ would accept <M#,a> because a ∈ {a,b}, and |{a,b}| = 2 <M,w> ∉ ¬H: M# would accept a and b at 1.a, proceed through 1.c, and accept everything else at 1.e. Thus L(M#) = ∑*, and Mₒ would not accept <M#,a> because |∑*| != 2. But no TM could semidecide ¬H, so Mₒ could not possibly exist.
  • 2. BSA/520 v4 Gail Industries Case Study BSA/520 v4 Page 6 of 6 Gail Industries: Smallville Collections Processing Entity Case Study This case study will be used to complete your assignments throughout the course. Some sections of the case study will be necessary in multiple assignments. See the assignment instructions for specific assignment requirements.Introduction to Gail Industries Gail Industries is a partner to many Fortune 1000 companies and governments around the world. Gail Industries’ role is to manage essential aspects of their clients’ operations while interacting with and supporting the people their clients serve. They manage millions of digital transactions every day for various back office processing contracts. One of Gail Industries’ clients is the city of Smallville. Smallville, despite its name, is a metropolis seated in the heart of the nation. The city has 2.5 million residents, and the greater Smallville metropolitan area has a population of about 4 million people.Overview of the Operations of Smallville Collections Processing Entity (SCOPE) Summary of Services Provided Collections Processing The Smallville Collections Processing Entity (SCOPE) provides collections processing services to the city of Smallville. SCOPE receives tax payments, licensing fees, parking tickets, and court costs for this major municipality. The city of Smallville sends out invoices and other collections notices, and SCOPE processes payments received through the mail, through an online payment website, and through an interactive voice response (IVR) system. Payments are in the form of checks, debit cards, and credit cards. After processing invoices, SCOPE
  • 3. deposits the monies into the bank account for the city. SCOPE is responsible for ensuring the security of the mail that comes into the possession of all employees, subcontractors, and agents at its processing facility, located within Smallville. Controls and procedures for money and mail handling are established by SCOPE to ensure payments are accounted for, from the earliest point received through processing and deposit. These controls and procedures provide: 1. Assurances for proper segregation of duties 2. The design and use of satisfactory documentation to ensure proper recording of transactions 3. The safeguarding of access to and use of all assets and records 4. Independent checks on performance Payment Receipt The purpose of collections processing is to receive and process various types of payments, post the payment data to the Central Collections System (CCS), and deposit the accompanying funds in the Smallville bank account. This process includes the following types of payment receipts: · Regular mail – paper checks only · Website – credit and debit card payments; electronic checks · IVR – credit and debit card payments Mail Delivery A bonded courier picks up the payments from the United States Postal Service (USPS) facility in Smallville. SCOPE uses a subcontractor for courier services. This courier is dedicated, picking up and delivering mail only for SCOPE. This courier is also required to sign for registered, certified, and express delivery envelopes. Opening and Sorting Mail The daily success of payment processing depends on receiving mail quickly from the postal service, opening that mail, and
  • 4. properly sorting the contents for processing. Batches contain similar payment types: tax payments are processed together, court collections together, and so forth. Deposits Deposits are made daily into the Smallville bank account. Electronic payments (debit cards, credit cards, and paperless checks) are deposited through an interface between CCSys and the bank. Checks are converted to electronic debits and deposited electronically. However, those that cannot be converted to electronic form are deposited in physical form.Functional Areas of Operations Gail Industries uses the following specific functional areas of operations for SCOPE: · Contract manager – responsible for the overall management of contract deliverables of the payment processing operation, including the monitoring of financial expenditures to ensure compliance with contract budgets. · Operations manager – responsible for planning, managing, and controlling the day-to-day activities of the team that provides operational support for the business unit, including the establishment of operational objectives and work plans and delegation of assignments to subordinate managers. · Information technology (IT) manager – responsible for developing and maintaining the strategy of the future direction of IT infrastructure, including developing plans for the implementation of new IT projects and managing relationships with IT-related vendors and subcontractors. · Accounting – responsible for performing a variety of routine clerical and accounting functions within the accounting department, including daily balancing of receipts. In addition, the accountant resolves exception transactions, including charged back checks (bounced checks), forgery affidavits, and recoupment. · Call center – the city of Smallville does not have a centralized call center for handling questions relating to payments and
  • 5. invoices. It is considering adding one to the scope of services offered by Gail Industries.Information SystemsServices Gail Industries services are designed around the following tools and technologies: · Data Capture and Imaging – real-time instrument imaging and data capture—provides imaging, accountability and reporting of checks and remitted payments. · Invoice Management and Reporting – data correction and maintenance utilizing automated payment auditing and historical analysis. A browser-based application is available for internal SCOPE and Smallville staff to perform administrative functions. A separate internet-accessible payment portal allows for citizens, business owners, and others to view invoices and make payments.Processing Platforms Gail Industries currently utilizes cloud-based servers on the Amazon Web Services (AWS) platform for internet-accessible application. Data capture, imaging, and the payment processing application run on local servers in a secured computer room. Local servers run both Linux and Windows Server operating systems. Data is stored on Microsoft SQL Server to provide storage of payment, image, and balancing data. The servers supporting the CCS are housed within the server room (also known as the data center) and are managed by Gail Industries’ IT staff. The IT staff provides the following services: · Firewall management – monitoring and management of the firewall systems and networks on a 24/7/365 basis. · Network monitoring – proactive network and server monitoring services to help maximize system performance and uptime. · Data backup – data backup services for the production payment, imaging, and balancing data. · Incident management – IT incident monitoring, documentation, and resolution management.Control Objectives and Related Controls Note: Only select control objectives and related controls are
  • 6. included in the list below.Physical Security (Data Center) Control Objective 1: The controls provide reasonable assurance that physical access to computer resources within Gail Industries’ data center is restricted to authorized and appropriate personnel. To protect physical assets, management has documented and implemented physical access procedures to grant, control, monitor, and revoke access to the on-site data center. The data center requires two-factor authentication: a biometric credential via retinal eye scanner and a badge access card. Individuals requesting badge access document the request on a standardized employee management form that must be approved by departmental management. Administrative access to the badge access system is restricted to authorized IT personnel. When an employee is terminated, IT personnel revoke the badge access privileges as a component of the termination process. In addition, the IT manager performs a review of badge access privileges on a monthly basis to help ensure that terminated employees do not retain badge access. All visitors must sign a logbook and present picture ID to their escort upon entering the data center. Access is restricted to authorized IT personnel and equipment technicians. CCTV surveillance cameras are utilized throughout the facility and the data center to record activity; these images are retained for a minimum of 45 days.Physical Security (Facilities) Control Objective 2: Controls provide reasonable assurance that physical access to assets within Gail Industries’ facilities is restricted to authorized and appropriate personnel. To protect physical assets, management has documented and implemented physical access procedures to grant, control, monitor, and revoke access to the on-site facility for SCOPE. A door badge access system is employed to control access to areas within the facility (including the data center) through the use of predefined security zones. Individuals requesting badge access to the facility document the request on a standardized employee management form,
  • 7. accessible through Gail Industries’ employee on-boarding system (known as GEO). All requests must be approved by departmental management. Administrative access to the badge access system is restricted to authorized IT personnel. Upon termination (voluntary or involuntary), IT personnel revoke badge access privileges as a task in the termination process. In addition, the IT manager performs a monthly review of badge access privileges to ensure that terminated employees do not retain badge access. Both entrances into the facility are locked and are monitored by administrative personnel. The receptionist must unlock the door for visitor access. Visitors are required to ring a video doorbell and announce themselves to the receptionist. Visitors sign a logbook when entering the facility, and they are required to wear a visitor’s badge at all times. Visitors must be escorted by an authorized employee when accessing sensitive facility areas such as the mail room and server room. CCTV surveillance cameras are utilized throughout the facility and server room to record activity. Video images are retained for a minimum of 45 days.Change Management Control Objective 4: Controls provide reasonable assurance that changes to network infrastructure and system software are documented, tested, approved, and properly implemented to protect data from unauthorized changes and to support user entities’ internal control over financial reporting. Documented change management policies and procedures are in place to address change management activities. Further, there are provisions for emergency changes to the infrastructure and operating systems. Change requests are documented via a change request (CR) form. CRs include details of the change, including the change requestor, the date of the request, the change description, and change specifications. Management, through the Change Advisory Board (CAB), holds a weekly meeting to review and prioritize change requests. During this meeting, management authorizes change requests by signing off on the CR form.
  • 8. Detailed testing is performed prior to implementation of the change in test environments that are logically separated from the production environment. The CAB approves the changes prior to implementation. The ability to implement infrastructure and operating system updates to the production systems is restricted to user accounts of authorized IT personnel.Logical Security Control Objective 5: Controls provide reasonable assurance that administrative access to network infrastructure and operating system resources is restricted to authorized and appropriate users to support user entities’ internal control over financial reporting. Information security policies have been documented and are updated annually to assist personnel in the modification of access privileges to information systems and guide them in safeguarding system infrastructure, information assets, and data. Infrastructure and operating system users are authenticated via user account and password prior to being granted access. Password requirements are configured to enforce minimum password length, password expiration intervals, password complexity, password history requirements, and invalid password account lockout threshold, as documented in the IT Policies and Procedures Manual. The CCS application authenticates users through the use of individual user accounts and passwords before granting access to the applications. CCS utilizes predefined security groups for role-based access privileges. The application enforces password requirements of password minimum length, password expiration intervals, password complexity, password history, and invalid password account lockout threshold.Excerpt from IT Policies and Procedures Manual Version 1.0, 12/31/2016 Revision History Date Author Notes
  • 9. 12/31/2016 Ken Smith Version 1.0, accepted by client Overview This policy is intended to establish guidelines for effectively creating, maintaining, and protecting passwords at SCOPE. Scope This policy shall apply to all employees, contractors, and affiliates of SCOPE, and shall govern acceptable password use on all systems that connect to SCOPE network or access or store SCOPE, city of Smallville, or Gail Industries data. Policy Password Creation 1. All user and admin passwords must be at least [8] characters in length. Longer passwords and passphrases are strongly encouraged. 2. Where possible, password dictionaries should be utilized to prevent the use of common and easily cracked passwords. 3. Passwords must be completely unique, and not used for any other system, application, or personal account. 4. Default installation passwords must be changed immediately after installation is complete. Password Aging 1. User passwords must be changed every 60 days. Previously used passwords may not be reused. 2. System-level passwords must be changed on a monthly basis. Password Protection 1. Passwords must not be shared with anyone (including coworkers and supervisors), and must not be revealed or sent electronically. 2. Passwords shall not be written down or physically stored anywhere in the office. 3. When configuring password “hints,” do not hint at the format of your password (e.g., “zip + middle name”) 4. User IDs and passwords must not be stored in an unencrypted format.
  • 10. 5. User IDs and passwords must not be scripted to enable automatic login. 6. “Remember Password” feature on websites and applications should not be used. 7. All mobile devices that connect to the company network must be secured with a password and/or biometric authentication and must be configured to lock after 3 minutes of inactivity. Enforcement It is the responsibility of the end user to ensure enforcement with the policies above. If you believe your password may have been compromised, please immediately report the incident to the IT Department and change the password. Copyright© 2019 by University of Phoenix. All rights reserved. Copyright© 2019 by University of Phoenix. All rights reserved. L = { <M,s> : s ∈ L(M) and |L(M)| % 2 = 0}. Prove that L ∉ D by a reduction from H. One possible proof: R(<M,w>) = 1. Define M#(x): 1.a If x = a then accept 1.b Save x 1.c Replace x with w on the input tape 1.d Run M on w 1.e Restore x 1.f If x = b accept 2. Return <M#,a> If there were an Oracle Mₒ that could decide L, then C = Mₒ(R(<M,w>)) =
  • 11. Mₒ(<M#,a>) could decide H: <M,w> ∈ H: M# would accept a at 1.a, proceed through 1.d, and then accept b at 1.f. Thus L(M#) = {a,b}, and Mₒ accepts <M#,a> because a ∈ {a,b}, and |{a,b}| %2 = 0. <M,w> ∉ H: M# would accept a at 1.a, and loop forever at 1.d. Thus L(M#) = {a}, and Mₒ rejects <M#,a> because |{a}|%2 = 1. But no TM could decide H, so Mₒ could not possibly exist. Lab 9, due Thurdsay 5 pm L = { <M,s> : s ∈ L(M) and |L(M)| % 2 = 0}. For example, suppose that L(M) = {aa}. Then <M,aa> ∉ L because |L(M)| = 1, 1 % 2 = 1; If L(M) {a,aaa} then <M,ℇ> ∉ L because ℇ ∉ L(M), but <M,aaa> ∈ L. Prove that L ∉ D by reduction from H. Your proof could implement R, the mapping reduction function, as a Java or Python program in the form demonstrated, which allows the user to configure whether M halts on w
  • 12. R<M,w> = 1. Define M#(x) 1.a If x = a then accept 1.b Save x 1.c Replace x with w on the input tape 1.d Run M on w 1.e Restore x to the input tape 1.f If x = b accept 2. Return <M#,a> If there were an Oracle Mₒ that could decide L, the C = Mₒ(R(<M,w>)) = Mₒ(<M#,a>) could decide H. <M,w> ∈ H: M# accepts a at 1.a, passes through 1.d, and accepts b at 1.f. So L(M#) = {a,b}, and Mₒ accepts <M#,a> because a ∈ L(M#), and |L(M#)| %2 = 0. <M,w> ∉ H: M# accepts a at 1.a and then loops forever at 1.d Thus L(M#) = {a}, and Mₒ rejects <M#,a> because |L(M#)| % 2 = 1. But no TM could decide H, so Mₒ could not possibly exist. Lab 10: L {<M,s> : s ∈ L(M), |L(M)| = 2}. Prove that L ∉ SD by a reduction from ¬H. H3 2. (12.5 points) L = { <M,t> : t ∈ L(M) and s ∉ L(M), t,s ∈ {a,b}*, where t is the string after s in a lexicographic ordering of {a,b}*}. As examples, which must
  • 13. not appear in your proof: Let L(M₁) = {b,aa}. Then <M₁,b> ∈ L because b ∈ L(M₁) and a ∉ L(M₁); <M₁,aa> ∉ L because both aa and b are in L(M₁); and <M₁,a> ∉ L because a ∉ L(M₁). Prove that L ∉ D using a reduction from H. Do not Rice's theorem. Rony Highlight L₁ = {<M,s> : M rejects ss, but accepts exactly two other strings ending in s}. Prove that L₁ ∉ D by a reduction from H. R(<M,w>) = 1. Define M#(x) 1.a if x = aabaab reject 1.b save x 1.c Replace x with w on the the input tape 1.d Run M on w 1.e Restore x 1.f if x = aaab, accept 1.g if x = baab, accept 1.h else reject 2. Return <M#,aab> if x == "aabaab": print("aabaab ∉ L") sys.exit()
  • 14. M(w) #stop here if M loops on w if x == "aaab": print("aaab ∈ L") sys.exit() if x == "aab": print("baab ∈ L") sys.exit() If there were an Oracle Mₒ that could decide L, the C = Mₒ(R(<M,w>)) = Mₒ(<M#,aab>) could decide H. <M,w> ∈ H: Mₒ accepts <M#,aab> because M# rejects when x = aabaab. If x != aabaab, then M# passes through step 1.d, and then accepts exactly strings ending aab at steps 1.g and 1.h. <M,w> ∉ H: Mₒ rejects <M#,aab> because L(M#) does not include exactly two strings in aab. L(M#) = {} = Ø 1. Define M#(x) 1.a if x = aabaab reject 1.b save x 1.c Replace x with w on the the input tape 1.d Run M on w LOOP FOREVER, NEVER GET PAST 1.D But no TM could decidde H, so Mₒ could not possibly exist. L₂ = {<M> : No string in L(M) ends with ".pdf"}. Prove that L₂
  • 15. ∉ D by a reduction from H. R(<M,w>): 1. Define M# 1.w Replace x with w on the input tape 1.x Run M on w 1.y Accept 2. Return <M#> If there were an Oracle Mₒ that decides L₂, then C = ¬Mₒ(<M#>) decides H. <M,w> ∈ H: L(M#) = ∑*. What does Mₒ think about TMs that accept ∑*? Does it think are elements of L₂ or not? Mₒ accepts if it thinks that there are NO strings in ∑* that end in .pdf; otherwise it rejects. Mₒ REJECTS <M#> because there an infinite number of strings in ∑* that end in .pdf <M,w> ∉ H: L(M#) = Ø, and so Mₒ ACCEPTS, because Ø contains no strings ending in .pdf But nothing could decide H,so L₂ is undecdiable as well. Prove that L₂ ∉ SD by a reduction from ¬H: R(<M,w> = 1. Define M#(x): 1.a Replace x with w on the input tape. 1.b Run M on w 1.c Accept (accepts any x) 2. Return <M#>
  • 16. If there were an Oracle Mₒ that could semidecide L₂, then C=Mₒ(R(<M,w>)) = Mₒ(M#) could semidecide ¬H: Note that the requirements for a semideciding Mₒ are that Mₒ accept if <M#> ∈ L₂, and either loop or reject if <M#> ∉ L₂. <M,w> ∈ ¬H: M# loops forever 1.b and thus L(M#) = Ø. Mₒ accepts <M#> because L(M#) contains no strings ending in ".pdf" <M,w> ∉ ¬H: M# passes through 1.b and accepts any x at 1.c. Thus L(M#) = ∑*, and Mₒ does not accept <M#> because ∑* contains strings ending in ".pdf" But no TM could semidecide ¬H, so Mₒ could not possibly exist. L₃ = {<M> : L(M) is an infinite language}. Prove that L₃ ∉ SD using a reduction from ¬H. Does this proof work? R(<M,w>) = 1. Define M#(x): 1.a Replace x with w on the input tape. 1.b Run M on w 1.c Accept (accepts any x) 2. Return <M#>
  • 17. If there were an Oracle Mₒ that could semidecide L₂, then C=¬Mₒ(R(<M,w>)) = ¬Mₒ(M#) could semidecide ¬H: <M,w> ∈ ¬H: M# loops forever 1.b and thus L(M#) = Ø. Mₒ does not accept <M#> because L(M#) = Ø, and Ø is not an infinite language. So C accepts. <M,w> ∉ ¬H: M# passes through 1.b and accepts any x at 1.c. Thus L(M#) = ∑*, and Mₒ accepts <M#> because ∑ is an infinie language. So C rejects. L₄ = {<M> : L(M) is context-free}. Prove that L₄ ∉ SD using a reduction from ¬H R (<M,w>) = 1. Define M# 1.a Save x. 1.b Erase the input tape. 1.c Write w on the input tape. 1.d Simulate M on w. 1.e If x ∈ aⁿbⁿcⁿ, accept. 1.f Else loop. 2. Return <M#>. 66 C O M M U N I C AT I O N S O F T H E A C M | J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 contributed articles
  • 18. T H E C H U R C H - T U R I N G T H E S I S (CTT) underlies tantalizing open questions concerning the fundamental place of computing in the physical universe. For example, is every physical system computable? Is the universe essentially computational in nature? What are the implications for computer science of recent speculation about physical uncomputability? Does CTT place a fundamental logical limit on what can be computed, a computational “barrier” that cannot be broken, no matter how far and in what multitude of ways computers develop? Or could new types of hardware, based perhaps on quantum or relativistic phenomena, lead to radically new computing paradigms that do breach the Church-Turing barrier, in which the uncomputable becomes com- putable, in an upgraded sense of “com- putable”? Before addressing these ques- tions, we first look back to the 1930s to consider how Alonzo Church and Alan Turing formulated, and sought to jus- tify, their versions of CTT. With this nec- essary history under our belts, we then turn to today’s dramatically more pow- erful versions of CTT. History of the Thesis Turing stated what we will call “Turing’s thesis” in various places and with vary- ing degrees of rigor. The following for- mulation is one of his most accessible. Turing’s thesis. “L.C.M.s [logical com- puting machines, Turing’s expression for Turing machines] can do anything
  • 19. that could be described as … ‘purely me- chanical’.”38 Turing also formulated his thesis in terms of numbers. For example, he said, “It is my contention that these op- erations [the operations of an L.C.M.] include all those which are used in the computation of a number.”36 and “[T]he ‘computable numbers’ include all numbers which would naturally be regarded as computable.”36 Church (who, like Turing, was work- ing on the German mathematician David Hilbert’s Entscheidungsproblem) advanced “Church’s thesis,” which he expressed in terms of definability in his lambda calculus. Church’s thesis. “We now define the notion … of an effectively calculable The Church- Turing Thesis: Logical Limit or Breachable Barrier? D O I : 1 0 . 1 1 4 5 / 3 1 9 8 4 4 8 In its original form, the Church-Turing thesis concerned computation as Alan Turing and Alonzo Church used the term in 1936— human computation.
  • 20. BY B. JACK COPELAND AND ORON SHAGRIR key insights ˽ The term “Church-Turing thesis” is used today for numerous theses that diverge significantly from the one Alonzo Church and Alan Turing conceived in 1936. ˽ The range of algorithmic processes studied in modern computer science far transcends the range of processes a “human computer” could possibly carry out. ˽ There are at least three forms of the “physical Church-Turing thesis”— modest, bold, and super-bold—though, at the present stage of physical inquiry, it is unknown whether any of them is true. http://dx.doi.org/10.1145/3198448 12oclockscholar Highlight 12oclockscholar Sticky Note Turing also thought LCMs could be intelligent as humans are. ∴ He viewed consciousness as mechanical? J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M M U N I C AT I O N S O F T H E A C M 67 I M
  • 23. ) function of positive integers by iden- tifying it with the notion of a recursive function of positive integers (or of a λ-definable function of positive inte- gers).”5 Church chose to call this a definition. American mathematician Emil Post, on the other hand, referred to Church’s the- sis as a “working hypothesis” and criti- cized Church for masking it in the guise of a definition.33 Upon learning of Church’s “defi- nition,” Turing quickly proved that λ-definability and his own concept of computability (over positive integers) are equivalent. Church’s thesis and Tur- ing’s thesis are thus equivalent, if atten- tion is restricted to functions of positive integers. (Turing’s thesis, more gen- eral than Church’s, also encompassed computable real numbers.) However, it is important for a computer scientist to appreciate that despite this exten- sional equivalence, Turing’s thesis and Church’s thesis have distinct meanings and so are different theses, since they are not intensionally equivalent. A lead- ing difference in their meanings is that Church’s thesis contains no reference
  • 24. to computing machinery, whereas Tur- ing’s thesis is expressed in terms of the “Turing machine,” as Church dubbed it in his 1937 review of Turing’s paper. It is now widely understood that Turing introduced his machines with the intention of providing an idealized Is everything in the physical universe computable? Hubble Space Telescope view of the Pillars of Creation in the Eagle Nebula. 68 C O M M U N I C AT I O N S O F T H E A C M | J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 contributed articles each going far beyond CTT-O. First, we look more closely at the algorithmic form of thesis, as stated to a first approx- imation by Lewis and Papadimitriou29: “[W]e take the Turing machine to be a precise formal equivalent of the intuitive notion of ‘algorithm’.” What Is an Algorithm? The range of algorithmic processes studied in modern computer science far transcends the range of processes a Turing machine is able to carry out. The Turing machine is restricted to, say, changing at most one bounded part at each sequential step of a computation.
  • 25. As Yuri Gurevich pointed out, the con- cept of an algorithm keeps evolving: “We have now parallel, interactive, distrib- uted, real-time, analog, hybrid, quan- tum, etc. algorithms.”22 There are en- zymatic algorithms, bacterial foraging algorithms, slime-mold algorithms, and more. The Turing machine is incapable of performing the atomic steps of algo- rithms carried out by, say, an enzymatic system (such as selective enzyme bind- ing) or a slime mold (such as pseudopod extension). The Turing machine is simi- larly unable to duplicate (as opposed to simulate) John Conway’s Game of Life, where—unlike a Turing machine—ev- ery cell updates simultaneously. A thesis aiming to limit the scope of algorithmic computability to Turing computability should thus not state that every possible algorithmic process can be performed by a Turing machine. The way to express the thesis is to say the extensional input-output function ια associated with an algorithm α is al- ways Turing-computable; ια is simply the extensional mapping of α’s inputs to α’s outputs. The algorithm the Tur- ing machine uses to compute ια might be very different from α itself. A ques- tion then naturally arises: If an algo- rithmic process need not be one a Tur- ing machine can carry out, save in the weak sense just mentioned, then where do the boundaries of this concept lie?
  • 26. What indeed is an algorithm? The dominant view in computer sci- ence is that, ontologically speaking, al- gorithms are abstract entities; however, there is debate about what abstract en- tities algorithms are. Gurevich defined the concept in terms of abstract-state machines, Yiannis Moschovakis in terms of abstract recursion, and Noson Yanofsky in terms of equivalence class- es of programs, while Moshe Vardi has speculated that an algorithm is both abstract-state machine and recursor. It is also debated whether an algorithm must be physically implementable. Mos- chovakis and Vasilis Paschalis (among others) adopt a concept of algorithm “so wide as to admit ‘non-implementable’ algorithms,”30 while other approaches do impose a requirement of physical im- plementability, even if only a very mild one. David Harel, for instance, writes: [A]ny algorithmic problem for which we can find an algorithm that can be pro- grammed in some programming lan- guage, any language, running on some computer, any computer, even one that has not been built yet but can be built … is also solvable by a Turing machine. This statement is one version of the so- called Church/Turing thesis.”23 Steering between these debates— and following Harel’s suggestion that
  • 27. the algorithms of interest to computer science are always expressible in pro- gramming languages—we arrive at the following program-oriented formula- tion of the algorithmic thesis: CTT-Algorithm (CTT-A). Every algo- rithm can be expressed by means of a program in some (not necessarily cur- rently existing) Turing-equivalent pro- gramming language. There is an option to narrow CTT-A by adding “physically implementable” before “program,” although in our view this would be to lump together two dis- tinct computational issues that are bet- ter treated separately. The evolving nature and open-end- edness of the concept of an algorithm is matched by a corresponding open-end- edness in the concept of a programming language. But this open-endedness not- withstanding, CTT-A requires that all algorithms be bounded by Turing com- putability. Later in this article we examine com- plexity-theoretic and physical versions of the Church-Turing thesis but first turn to the question of the justification of the theses introduced so far. Are CTT- O and CTT-A correct? What Justifies the
  • 28. Church-Turing Thesis? Stephen Kleene—who coined the term “Church-Turing thesis”—catalogued four types of argument for CTT-O: First, description of a certain human activ- ity—numerical computation; in Tur- ing’s day computation was carried out by rote workers called “computers,” or, sometimes, “computors”; see, for exam- ple, Turing.37 The Church-Turing thesis is about computation as the term was used in 1936—human computation. Church’s term “effectively calculable function” was intended to refer to func- tions that are calculable by an idealized human computer; and, likewise, Tur- ing’s phrase “numbers which would naturally be regarded as computable” was intended to refer to those numbers that could be churned out, digit by digit, by an idealized human computer work- ing ceaselessly. Here, then, is our formulation of the historical version of the Church- Turing thesis, as informed by Turing’s proof of the equivalence of his and Church’s theses: CTT-Original (CTT-O). Every function that can be computed by the idealized human computer, which is to say, can be effectively computed, is Turing-com- putable.
  • 29. Some mathematical logicians view CTT-O as subject ultimately to either mathematical proof or mathemati- cal refutation, like open mathematical conjectures, as in the Riemann hypoth- esis, while others regard CTT-O as not amenable to mathematical proof but supported by philosophical arguments and an accumulation of mathematical evidence. Few logicians today follow Church in regarding CTT-O as a defini- tion. We subscribe to Turing’s view of the status of CTT-O, as we outline later. In computer science today, algo- rithms and effective procedures are, of course, associated not primarily with humans but with machines. (Note, while some expositors might distinguish be- tween the terms “algorithm” and “ef- fective procedure,” we use the terms in- terchangeably.) Many computer science textbooks formulate the Church-Turing thesis without mentioning human com- puters at all; examples include the well- known books by Hopcroft and Ullman24 and Lewis and Papadimitriou.29 This is despite the fact that the concept of hu- man computation was at the heart of both Turing’s and Church’s analysis of computation. We discuss several important mod- ern forms of the Church-Turing thesis,
  • 30. 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M M U N I C AT I O N S O F T H E A C M 69 contributed articles employs the Schönfinkel-Curry idea of “combinators” in order to axiomatize the concept of an algorithmic function.) Fourth in this catalog of consider- ations supporting CTT-O are arguments from first-order logic. They are typified by a 1936 argument of Church’s and by Turing’s argument II, from Section 9 of Turing’s 1936 paper. In 2013, Saul Kripke28 presented a reconstruction of Turing’s argument II, which goes as
  • 31. follows: Computation is a special form of mathematical deduction; and every mathematical deduction—and there- fore every computation—can be formal- ized as a valid deduction in the language of first-order predicate logic with iden- tity (a step Kripke referred to as “Hil- bert’s thesis”); following Gödel’s com- pleteness theorem, each computation is thus formalized by a provable formula of first-order logic; and every computa- tion can therefore be carried out by the universal Turing machine. This last step regarding the universal Turing machine is secured by a theorem proved by Tur- ing: Every provable formula of first-order logic can be proved by the universal Tur- ing machine. The third and fourth of these argu- ments provide justification for CTT-O but not for CTT-A. As Robin Gandy20 pointed out, the third argument—Tur- ing’s I—contains “crucial steps … where he [Turing] appeals to the fact that the calculation is being carried out by a hu- man being.”20 For example, Turing as- sumed “a human being can only write one symbol at a time,” and Gandy noted this assumption cannot be carried over to a parallel machine that “prints an ar- bitrary number of symbols simultane- ously.”20 In Conway’s Game of Life, for instance, there is no upper bound on the number of cells that make up the grid, yet the symbols in all the cells are
  • 32. updated simultaneously. Likewise, the fourth argument (Turing’s II) involves the claim that computation is a special form of formal proof, but the notion of proof is intrinsically related to what a human mathematician—and not some oracle—can prove. It is thus perhaps not too surprising that the third and fourth arguments in this catalog seldom if ever appear in logic and computer science textbooks. The two arguments that are always given for the Church-Turing thesis (in, for ex- ample, Lewis and Papadimitriou29) are the argument from non-refutation points out the thesis has never been refuted, despite sustained (and ongo- ing) attempts to find a counterexample (such as the attempts by László Kalmár and, more recently, by Doukas Kapan- tais). Second, the argument from con- fluence points to the fact that the vari- ous characterizations of computability, while differing in their approaches and formal details, turn out to encompass the very same class of computable func- tions. Four such characterizations were presented (independently) in 1936 and immediately proved to be extension- ally equivalent: Turing computability, Church’s λ-definability, Kleene’s recur- sive functions, and Post’s finitary com- binatory processes.
  • 33. Third is an argument usually re- ferred to nowadays as “Turing’s analy- sis.” Turing called it simply argument “I,” stating five very general and intui- tive constraints—or axioms—the hu- man computer may be assumed to satisfy: “The behavior of the computer at any moment is determined by the symbols which he is observing, and his ‘state of mind’ at that moment”; “[T] here is a bound B to the number of sym- bols or squares which the computer can observe at one moment”; “[E]ach of the new observed squares is within L squares of an immediately previously observed square”; “[I]n a simple op- eration not more than one symbol is altered”; and “[T]he number of states of mind which need be taken into ac- count is finite.” Turing noted that refer- ence to the computer’s states of mind can be avoided by talking instead about configurations of symbols, these being “a more definite and physical counter- part” of states of mind.36 The second part of Turing’s argu- ment I is a demonstration that each function computed by any human com- puter subject to these constraints is also computable by a Turing machine; it is not difficult to see that each of the com- puter’s steps can be mimicked by the Turing machine, either in a single step or by means of a series of steps. In short, Turing’s five axioms entail CTT-O. (Tur-
  • 34. ing’s axiomatic approach to comput- ability was in fact foreshadowed by Kurt Gödel in a suggestion to Church a year or so earlier.15 Some more recent axiomatic approaches to computability proceed differently; for example, Erwin Engeler The Turing machine is restricted to, say, changing at most one bounded part at each sequential step of a computation. 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight
  • 35. 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 70 C O M M U N I C AT I O N S O F T H E A C M | J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 contributed articles is whether these axioms completely capture the concept of a computational or algorithmic process, and, so far as we see, no one has ever given a rigor- ous mathematical justification of that claim. The axioms may be supported by informal arguments, but the whole edifice then falls short of mathemati- cal proof. This is most apparent when the informal arguments offered for the axioms invoke limitations in the cogni- tive capacities of human computers, as we point out elsewhere.13 A justification of the second axiom may, for instance,
  • 36. refer to the limitations of human ob- servation. The axioms most certainly lie beyond the scope of mathematical demonstration if their truth depends on contingent human limitations. Turing himself cheerfully appealed to cognitive limitations in the course of his analysis, saying, for example, “[J]ustification lies in the fact that the human memory is necessarily limited.”36 In summary, our answer to “Is CTT- O mathematically provable?” is: Turing thought not and we have found no rea- son to disagree with him. The various historical arguments seem more than sufficient to establish CTT-O, but these arguments do indeed fall short of math- ematical proof. We next address complexity theoretic forms of the Church-Turing thesis, then turn to the question of whether CTT-A is justified in the context of physically real- istic computations. Complexity: The Extended Church-Turing Thesis It is striking that the Turing machine holds a central place not only in com- putability theory but also in complexity theory, where it is viewed as a universal model for complexity classes. In complexity theory, the time com- plexities of any two general and rea-
  • 37. sonable models of computation are as- sumed to be polynomially related. But what counts as “reasonable”? Aharonov and Vazirani1 glossover “reasonable” as “physically realizable in principle”; see also Bernstein and Vazirani.3 If a com- putational problem’s time complexity is t in some (general and reasonable) mod- el, then its time complexity is assumed to be poly(t) in the single-tape Turing machine model; see also Goldreich.21 This assumption has different names in the literature; Goldreich21 called it the confluence and non-refutation. Yet both those arguments are merely inductive, whereas the third and fourth arguments are deductive in nature. However, a number of attempts have sought to extend Turing’s axiomatic analysis to machine computation; for example, Gandy20 broadened Turing’s analysis in such a way that parallel com- putation is included, while Dershowitz and Gurevich16 gave a more general anal- ysis in terms of abstract state machines. We return to the topic of extending the analysis to machine computation later in this article but first address the im- portant question of whether CTT-O is mathematically provable. Is the Thesis Mathematically Provable? It used to be thought by mathematical
  • 38. logicians and others that CTT-O is not amenable to formal proof, since it is not a mathematically precise statement. This is because it pairs an informal concept—a “vague intuitive notion,” Church called it5—with a precise con- cept. However, Elliott Mendelson gave a powerful critique of this general argu- ment; and today the view that CTT-O is formally provable seems to be gaining acceptance; see, for example, Dershow- itz and Gurevich.16 Inspired by Gandy,20 Wilfried Sieg35 stated that a tightened form of Turing’s argument I proves the thesis; and Kripke28 entertained the same claim for Turing’s argument II. Turing’s own view was that, on the contrary, his thesis is not susceptible to mathematical proof. He thought his arguments I and II, and indeed “[a]ll arguments which can be given” for the thesis, are “fundamentally, appeals to intuition, and for this reason rather un- satisfactory mathematically.”36 Hilbert’s thesis is another example of a proposi- tion that can be justified only by appeal to intuition, and so Kripke’s28 tightened form of argument II, far from proving CTT-O, merely deduced it from another thesis that is also not amenable to math- ematical proof. Much the same can be said about ar- gument I. If axioms 1–5 are formulated in precise mathematical terms, then it is
  • 39. certainly provable from them that com- putation is bounded by Turing comput- ability; this is probably what Gandy20 meant when he said Turing’s argument I proves a “theorem.” But the real issue Turing’s own view was that, on the contrary, his thesis is not susceptible to mathematical proof. 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M M U N I C AT I O N S O F T H E A C M 71 contributed articles binary sequence; Church showed such sequences are uncomputable, as we discussed elsewhere.8 Moreover, specu- lation that there may be deterministic physical processes whose behavior can- not be calculated by the universal Tur- ing machine stretches back over several decades; for a review, see Copeland.9 In
  • 40. 1981, Pour-El and Richards34 showed that a system evolving from computable initial conditions in accordance with the familiar three-dimensional wave equation is capable of exhibiting be- havior that falsifies CTT-P; even today, however, it is an open question whether these initial conditions are physically possible. Earlier papers, from the 1960s, by Bruno Scarpellini, Arthur Komar, and Georg Kreisel, in effect questioned CTT-P, with Kreisel stating: “There is no evidence that even present-day quan- tum theory is a mechanistic, i.e., recur- sive theory in the sense that a recur- sively described system has recursive behavior.”27 Other potential counterex- amples to CTT-P have been described by a number of authors, including what are called “relativistic” machines. First introduced by Pitowsky,32 they will be examined in the section called “Relativ- istic Computation.” CTT-P and Quantum Mechanics There are a number of theoretical coun- termodels to CTT-P arising from quan- tum mechanics. For example, in 1964, Komar26 raised “the issue of the macro- scopic distinguishability of quantum states,” asserting there is no effective procedure “for determining whether two arbitrarily given physical states can be superposed to show interference ef- fects.” In 2012, Eisert et al.19 showed “[T]he very natural physical problem of
  • 41. determining whether certain outcome sequences cannot occur in repeated quantum measurements is undecid- able, even though the same problem for classical measurements is readily decidable.” This is an example of a prob- lem that refers unboundedly to the fu- ture but not to any specific time. Other typical physical problems take the same form; Pitowsky gave as examples “Is the solar system stable?” and “Is the mo- tion of a given system, in a known initial state, periodic?” Cubitt et al.14 described another such undecidability result in a 2015 Nature article, outlining their proof that “[T]he Cobham-Edmonds thesis, while Yao40 introduced the term “Extended Church- Turing thesis.” The thesis is of interest only if P ≠ NP, since otherwise it is trivial. Quantum-computation researchers also use a variant of this thesis, as ex- pressed in terms of probabilistic Turing machines. Bernstein and Vazirani3 said: “[C]omputational complexity theory rests upon a modern strengthening of [the Church-Turing] thesis, which as- serts that any ‘reasonable’ model of computation can be efficiently simulat- ed on a probabilistic Turing machine.”3 Aharonov and Vazirani1 give the fol- lowing formulation of this assumption,
  • 42. naming it the “Extended Church-Turing thesis”—though it is not quite the same as Yao’s earlier thesis of the same name, which did not refer to probabilistic Tur- ing machines: CTT-Extended (CTT-E). “[A]ny reason- able computational model can be simu- lated efficiently by the standard model of classical computation, namely, a probabilistic Turing machine.”1 As is well known in computer science, Peter Shor’s quantum algorithm for prime factorization is a potential coun- terexample to CTT-E; the algorithm runs on a quantum computer in polynomial time and is much faster than the most- efficient known “classical” algorithm for the task. But the counterexample is controversial. Some computer scientists think the quantum computer invoked is not a physically reasonable model of computation, while others think accom- modating these results might require further modifications to complexity theory. We turn now to extensions of the Church-Turing thesis into physics. Physical Computability The issue of whether every aspect of the physical world is Turing-computable was broached by several authors in the 1960s and 1970s, and the topic rose to
  • 43. prominence in the mid-1980s. In 1985, Stephen Wolfram formu- lated a thesis he described as “a physical form of the Church-Turing hypothesis,” saying, “[U]niversal computers are as powerful in their computational capaci- ties as any physically realizable system can be, so that they can simulate any physical system.”39 In the same year, Da- vid Deutsch, who laid the foundations of quantum computation, independently stated a similar thesis, describing it as “the physical version of the Church- Turing principle.”17 The thesis is now known as the Church-Turing-Deutsch thesis and the Church-Turing-Deutsch- Wolfram thesis. Church-Turing-Deutsch-Wolfram the- sis (CTDW). Every finite physical system can be simulated to any specified de- gree of accuracy by a universal Turing machine. Deutsch pointed out that if “simu- lated” is understood as “perfectly simu- lated,” then the thesis is falsified by con- tinuous classical systems, since such classical systems necessarily involve un- computable real numbers, and went on to introduce the concept of a universal quantum computer, saying such a com- puter is “capable of perfectly simulating every finite, realizable physical system.”
  • 44. Other physical formulations were ad- vanced by Lenore Blum et al., John Ear- man, Itamar Pitowsky, Marian Pour-El, and Ian Richards, among others. We next formulate a strong version of the physical Church-Turing thesis we call the “total physical computability thesis.” (We consider some weaker ver- sions later in the article.) By “physical system” we mean any system whose be- havior is in accordance with the actual laws of physics, including non-actual and idealized systems. Total physical computability thesis (CTT-P). Every physical aspect of the behavior of any physical system can be calculated (to any specified degree of ac- curacy) by a universal Turing machine. As with CTT-E, there is also a proba- bilistic version of CTT-P, formulated in terms of a probabilistic Turing machine. Arguably, the phrase “physical ver- sion of the Church-Turing thesis” is an inappropriate name for this and related theses, since CTT-O concerns a form of effective or algorithmic activity and as- serts the activity is always bounded by Turing computability, while CTT-P and CTDW, on the other hand, entail that the activity of every physical system is bounded by Turing computability; the system’s activity need not be algorith-
  • 45. mic/effective at all. Nevertheless, in our “CTT-” nomenclature, we follow the Deutsch-Wolfram tradition throughout this article. Is CTT-P true? Not if physical systems include systems capable of producing unboundedly many digits of a random 12oclockscholar Highlight 72 C O M M U N I C AT I O N S O F T H E A C M | J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 contributed articles admitted the model invoked in their proof is highly artificial, saying, “Wheth- er the results can be extended to more natural models is yet to be determined.” There is also the question of whether the spectral gap problem becomes comput- able when only local Hilbert spaces of realistically low dimensionality are con- sidered. Nevertheless, these results are certainly suggestive: CTT-P cannot be taken for granted, even in a finite quan- tum universe. Summarizing the current situa- tion with respect to CTT-P, we can say, although theoretical countermodels in which CTT-P is false have been de-
  • 46. scribed, there is at present—so far as we know—not a shred of evidence that CTT-P is false in the actual universe. Yet it would seem most premature to assert that CTT-P is true. Weaker Physical Computability Theses Piccinini31 has distinguished between two different types of physical versions of the Church-Turing thesis, both com- monly found in the literature, describ- ing them as “bold” and “modest” ver- sions of the thesis, respectively. The bold and modest versions are weaker than our “super-bold” version just dis- cussed (CTT-P). Bold versions of the thesis state, roughly, that “Any physical process can be simulated by some Tur- ing machine.”31 The Church-Turing- Deutsch-Wolfram thesis (CTDW) is an example, though Piccinini emphasized that the bold versions proposed by dif- ferent researchers are often “logically independent of one another” and that, unlike the different formulations of CTT-O, which exhibit confluence, the different bold formulations in fact ex- hibit “lack of confluence.”31 CTDW and other bold forms are too weak to rule out the uncomputabil- ity scenarios described by Cubitt et al.14 and by Eisert et al.19 This is because the physical processes involved in these
  • 47. scenarios may, so far as we know, be Turing-computable; it is possible that each process can be simulated by a Tur- ing machine, to any required degree of accuracy, and yet the answers to cer- tain physical questions about the pro- cesses are, in general, uncomputable. The situation is similar in the case of the universal Turing machine itself. The machine’s behavior (consisting of the physical actions of the read/write head) is always Turing-computable since it is produced by the Turing machine’s pro- gram, yet the answers to some questions about the behavior (such as whether or not the machine halts given certain in- puts) are not computable. Nevertheless, bold forms (such as CTDW) are interesting empirical hy- potheses in their own right and the world might confute them. For in- stance, CTDW fails in the wave-equa- tion countermodel due to Pour-El and Richards34 where the mapping between the wave equation’s “inputs” and “out- puts” is not a Turing-computable (real) function; although, as noted earlier, the physicality of this countermodel can readily be challenged. We discuss some other potential countermodels later in the article, but turn first to what Picci- nini termed “modest” versions of the thesis. Modest versions maintain in es-
  • 48. sence that every physical computing process is Turing-computable; for two detailed formulations, see Gandy20 and Copeland.8 Even if CTT-P and CTDW are in general false, the behavior of the subset of physical systems that are ap- propriately described as computing sys- tems may nevertheless be bounded by Turing-computability. An illustration of the difference between modest versions on the one hand and CTT-P and CTDW on the other is given by the fact that the wave-equation example is not a counter- model to the modest thesis, assuming, as seems reasonable, that the physical dynamics described by the equation do not constitute a computing process. Here, we formulate a modest version of the physical Church-Turing thesis we call the “Physical Computation” thesis, then turn to the question of whether it is true. spectral gap problem is algorithmically undecidable: There cannot exist any al- gorithm that, given a description of the local interactions, determines whether the resultant model is gapped or gap- less.” Cubitt et al. also said this is the “first undecidability result for a major physics problem that people would re- ally try to solve.” The spectral gap, an important deter- minant of a material’s properties, refers
  • 49. to the energy spectrum immediately above the ground-energy level of a quan- tum many-body system, assuming a well-defined least-energy level of the sys- tem exists; the system is said to be “gap- less” if this spectrum is continuous and “gapped” if there is a well-defined next- least energy level. The spectral gap prob- lem for a quantum many-body system is the problem of determining whether the system is gapped or gapless, given the fi- nite matrices (at most three) describing the local interactions of the system. In their proof, Cubitt et al.14 encoded the halting problem in the spectral gap problem, showing the latter is at least as hard as the former. The proof involves an infinite family of two-dimensional lattices of atoms. But they pointed out their result also applies to finite systems whose size increases, saying, “Not only can the lattice size at which the system switches from gapless to gapped be arbi- trarily large, the threshold at which this transition occurs is uncomputable.” Their proof offers an interesting coun- termodel to CTT-P, involving a physical- ly relevant example of a finite system of increasing size. There exists no effective method for extrapolating the system’s future behavior from (complete descrip- tions of) its current and past states. It is debatable whether any of these quantum models correspond to real-
  • 50. world quantum systems. Cubitt et al.14 Relationships between the three physical computability theses: CTT-P, CTDW, and CTT-P-C. Physical computability theses super-bold bold modest CTT-P CTDW CTTP-P-C Total Physical Computability Thesis Church-Turing-Deutsch-Wolfram Thesis Physical Computation Thesis 12oclockscholar Highlight J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 | C O M M U N I C AT I O N S O F T H E A C M 73 contributed articles nal will have been received by TO before
  • 51. time t. So TO will fall into the black hole with 1 in its output cell if TE halted and 0 if TE never halted. Fortunately, TO can escape annihilation if its trajectory is carefully chosen in advance, says Néme- ti; the rotational forces of the Kerr hole counterbalance the gravitational forces that would otherwise “spaghettify” TO. TO thus emerges unscathed from the hole and goes on to use the computed value of the halting function in further computations. Németi and colleagues emphasize their machine is physical in the sense it is “not in conflict with presently ac- cepted scientific principles” and, in par- ticular, “the principles of quantum me- chanics are not violated.”2 They suggest humans might “even build” a relativistic computer “sometime in the future.”2 This is, of course, highly controversial. However, our point is that Németi’s the- oretical countermodel, which counters not only CTT-P-C but also CTT-P and CTDW, helps underscore that the “phys- ical version of the Church-Turing thesis” is quite independent of CTT-O, since the countermodel stands whether or not CTT-O is endorsed. We next reconsider CTT-A. CTT-A and Computation in the Broad The continuing expansion of the con- cept of an algorithm is akin to the exten- sion of the concept of number from inte-
  • 52. gers to signed integers to rational, real, and complex numbers. Even the con- cept of human computation underwent an expansion; before 1936, computation was conceived of in terms of total func- tions, and it was Kleene in 1938 who ex- plicitly extended the conception to also cover partial functions. Gurevich argued in 2012 that formal methods cannot capture the algorithm concept in its full generality due to the concept’s open-ended nature; at best, formal methods provide treatments of “strata of algorithms” that “have ma- tured enough to support rigorous defi- nitions.”22 An important question for computer science is whether CTT-A is a reasonable constraint on the growth of new strata. Perhaps not. In 1982, Jon Doyle18 suggested equilibrating systems with discrete spectra (such as molecules and other quantum many- body systems) illustrate a concept of effectiveness that is broader than the Physical Computation Thesis This form of the thesis maintains that physical computation is bounded by Turing-computability. Physical computation thesis (CTT-P-C). Every function computed by any physi- cal computing system is Turing-com- putable.
  • 53. Is CTT-P-C true? As with the stronger physical computability theses, it seems too early to say. CTT-P-C could be false only if CTT-P and CTDW turn out to be false, since each of them entails CTT-P- C (see the figure here, which outlines the relationships among CTT-P, CTDW, and CTT-P-C). If all physical computation is effective in the 1930s sense of Turing and Church, then CTT-P-C is certainly true. If, however, the door is open to a broadened sense of computation, where physical computation is not necessarily effective in the sense of being bounded by Turing-computability, then CTT-P-C makes a substantive claim. There is, in fact, heated debate among computer scientists and phi- losophers about what counts as physi- cal computation. Moreover, a number of attempts have sought to describe a broadened sense of computation in which computation is not bounded by Turing-computability; see, for ex- ample, Copeland.6 Computing ma- chines that compute “beyond the Tur- ing limit” are known collectively as “hypercomputers,” a term introduced in Copeland and Proudfoot.11 Some of the most thought-provoking examples of notional machines that compute in the broad sense are called “supertask” machines. These “Zeno computers” squeeze infinitely many computational steps into a finite span of time. Exam-
  • 54. ples include accelerating machines,7,12 shrinking machines, and the intrigu- ing relativistic computers described in the next section. Notional machines all constitute rather theoretical countermodels to CTT-P-C, so long as it is agreed that they compute in a broadened sense, but none has been shown to be physically realistic, although, as we explain, rela- tivistic computers come close. In short, the truth or falsity of CTT-P-C remains unsettled. Relativistic Computation Relativistic machines operate in space- time structures with the property that the entire endless lifetime of one com- ponent of the machine is included in the finite chronological past of another component, called “the observer.” The first component could thus carry out an infinite computation (such as calculat- ing every digit of π) in what is, from the observer’s point of view, a finite times- pan of, say, one hour. (Such machines are in accord with Einstein’s general the- ory of relativity, hence the term “relativ- istic.”) Examples of relativistic compu- tation have been detailed by Pitowsky, Mark Hogarth, and Istvan Németi. In this section we outline a relativistic machine RM consisting of a pair of com-
  • 55. municating Turing machines, TE and TO, in relative motion. TE is a universal machine, and TO is the observer. RM is able to compute the halting function, in a broad sense of computation. Speaking of computation here seems appropriate, since RM consists of nothing but two communicating Turing machines. Here is how RM works. When the in- put (m,n), asking whether the mth Tur- ing machine (in some enumeration of the Turing machines) halts or not when started on input n, enters TO, TO first prints 0 (meaning “never halts”) in its designated output cell and then transmits (m,n) to TE. TE simulates the computation performed by the mth Tur- ing machine when started on input n and sends a signal back to TO if and only if the simulation terminates. If TO receives a signal from TE, TO deletes the 0 it previously wrote in its output cell and writes 1 in its place (meaning “halts”). After one hour, TO’s output cell shows 1 if the mth Turing machine halts on input n and shows 0 if the mth machine does not halt on n. The most physically realistic version of this setup to date is due to Németi and his collaborators in Budapest. TE, an or- dinary computer, remains on Earth, while the observer TO travels toward and enters a slowly rotating Kerr black hole. TO approaches the outer event horizon,
  • 56. a bubble-like hypersurface surrounding the black hole. Németi theorized that the closer TO gets to the event horizon, the faster TE’s clock runs relative to TO due to Einsteinian gravitational time di- lation, and this speeding up continues with no upper limit. TO motion proceeds until, relative to a time t on TO clock, the entire span of TE’s computing is over. If any signal was emitted by TE, the sig- 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar Highlight
  • 57. 12oclockscholar Highlight 74 C O M M U N I C AT I O N S O F T H E A C M | J A N U A R Y 2 0 1 9 | V O L . 6 2 | N O . 1 contributed articles Conclusion In the computational literature the term “Church-Turing thesis” is applied to a variety of different propositions usu- ally not equivalent to the original the- sis—CTT-O; some even go far beyond anything either Church or Turing wrote. Several but not all are fundamental as- sumptions of computer science. Others (such as the various physical comput- ability theses we have discussed) are im- portant in the philosophy of computing and the philosophy of physics but are highly contentious; indeed, the label “Church-Turing thesis” should not mis- lead computer scientists or anyone else into thinking they are established fact or even that Church or Turing endorsed them. References 1. Aharonov, D. and Vazirani, U.V. Is quantum mechanics falsifiable? A computational perspective on the foundations of quantum mechanics. Chapter in Computability: Gödel, Turing, Church and Beyond, B.J. Copeland, C.J. Posy, and O. Shagrir, Eds. MIT Press,
  • 58. Cambridge, MA, 2013. 2. Andréka, H., Németi, I., and Németi, P. General relativistic hypercomputing and foundation of mathematics. Natural Computing 8, 3 (Sept. 2009), 499–516. 3. Bernstein, E. and Vazirani, U. Quantum complexity theory. SIAM Journal on Computing 26, 5 (Oct. 1997), 1411–1473. 4. Castelvecchi, D. Paradox at the heart of mathematics makes physics problem unanswerable. Nature 528 (Dec. 9, 2015), 207. 5. Church, A. An unsolvable problem of elementary number theory. American Journal of Mathematics 58, 2 (Apr. 1936), 345–363. 6. Copeland, B.J. The broad conception of computation. American Behavioral Scientist 40, 6 (May 1997), 690–716. 7. Copeland, B.J. Even Turing machines can compute uncomputable functions. Chapter in Unconventional Models of Computation, C. Calude, J. Casti, and M. Dinneen, Eds. Springer, Singapore, 1998. 8. Copeland, B.J. Narrow versus wide mechanism: Including a re-examination of Turing’s views on the mind-machine issue. The Journal of Philosophy 97, 1 (Jan. 2000), 5–32. 9. Copeland, B.J. Hypercomputation. Minds and Machines 12, 4 (Nov. 2002), 461–502. 10. Copeland, B.J. The Essential Turing: Seminal Writings
  • 59. in Computing, Logic, Philosophy, Artificial Intelligence, and Artificial Life, Plus the Secrets of Enigma. Oxford University Press, Oxford, U.K., 2004. 11. Copeland, B.J. and Proudfoot, D. Alan Turing’s forgotten ideas in computer science. Scientific American 280, 4 (Apr. 1999), 98–103. 12. Copeland, B.J. and Shagrir, O. Do accelerating Turing machines compute the uncomputable? Minds and Machines 21, 2 (May 2011), 221–239. 13. Copeland, B.J. and Shagrir, O. Turing versus Gödel on computability and the mind. Chapter in Computability: Gödel, Turing, Church, and Beyond, B.J. Copeland, C.J. Posy, and O. Shagrir, Eds. MIT Press, Cambridge, MA, 2013. 14. Cubitt, T.S., Perez-Garcia, D., and Wolf, M.M. Undecidability of the spectral gap. Nature 528, 7581 (Dec. 2015), 207–211. 15. Davis, M. Why Gödel didn’t have Church’s thesis. Information and Control 54, 1-2 (July 1982), 3–24. 16. Dershowitz, N. and Gurevich, Y. A natural axiomatization of computability and proof of Church’s thesis. Bulletin of Symbolic Logic 14, 3 (Sept. 2008), 299–350. 17. Deutsch, D. Quantum theory, the Church-Turing principle and the universal quantum computer. Proceedings of the Royal Society of London A: Mathematical, Physical and Engineering Sciences 400, 1818 (July 1985), 97–117.
  • 60. 18. Doyle, J. What is Church’s thesis? An outline. Minds and Machines 12, 4 (Nov. 2002), 519–520. 19. Eisert, J., Müller, M.P., and Gogolin, C. Quantum measurement occurrence is undecidable. Physical Review Letters 108, 26 (June 2012), 1–5. 20. Gandy, R.O. Church’s thesis and principles for mechanisms. In Proceedings of the Kleene Symposium, J. Barwise, H.J. Keisler, and K. Kunen, Eds. (Madison, WI, June 1978). North-Holland, Amsterdam, Netherlands, 1980. 21. Goldreich, O. Computational Complexity: A Conceptual Perspective. Cambridge University Press, New York, 2008. 22. Gurevich, Y. What is an algorithm? In Proceedings of the 38th Conference on Current Trends in the Theory and Practice of Computer Science (Špindleůrv Mlýn, Czech Republic, Jan. 21–27), M. Bieliková, G. Friedrich, G. Gottlob, S. Katzenbeisser, and G. Turán, Eds. Springer, Berlin, Heidelberg, Germany, 2012. 23. Harel, D. Algorithmics: The Spirit of Computing, Second Edition. Addison-Wesley, Reading, MA, 1992. 24. Hopcroft, J.E. and Ullman, J.D. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Reading, MA, 1979. 25. Kleene, S.C. Introduction to Metamathematics. Van Nostrand, New York, 1952. 26. Komar, A. Undecidability of macroscopically distinguishable states in quantum field theory. Physical Review 133, 2B (Jan. 1964), 542–544.
  • 61. 27. Kreisel, G. Mathematical logic: What has it done for the philosophy of mathematics? Chapter in Bertrand Russell: Philosopher of the Century, R. Schoenman, Ed. Allen and Unwin, London, U.K., 1967. 28. Kripke, S.A. Another approach: The Church-Turing ‘thesis’ as a special corollary of Gödel’s completeness theorem. Chapter in Computability: Gödel, Turing, Church, and Beyond, B.J. Copeland, C.J. Posy, and O. Shagrir, Eds. MIT Press, Cambridge, MA, 2013. 29. Lewis, H.R. and Papadimitriou, C.H. Elements of the Theory of Computation. Prentice Hall, Upper Saddle River, NJ, 1981. 30. Moschovakis, Y.N. and Paschalis, V. Elementary algorithms and their implementations. Chapter in New Computational Paradigms: Changing Conceptions of What Is Computable, S.B. Cooper, B. Lowe, and A. Sorbi, Eds. Springer, New York, 2008. 31. Piccinini, G. The physical Church-Turing thesis: Modest or bold? The British Journal for the Philosophy of Science 62, 4 (Aug. 2011), 733–769. 32. Pitowsky, I. The physical Church thesis and physical computational complexity. Iyyun 39, 1 (Jan. 1990), 81–99. 33. Post, E.L. Finite combinatory processes: Formulation I. The Journal of Symbolic Logic 1, 3 (Sept. 1936), 103–105. 34. Pour-El, M.B. and Richards, I.J. The wave equation with computable initial data such that its unique solution is not computable. Advances in Mathematics
  • 62. 39, 3 (Mar. 1981), 215–239. 35. Sieg, W. Mechanical procedures and mathematical experience. Chapter in Mathematics and Mind, A. George, Ed. Oxford University Press, New York, 1994. 36. Turing, A.M. On computable numbers, with an application to the Entscheidungsproblem (1936); in Copeland.10 37. Turing, A.M. Lecture on the Automatic Computing Engine (1947); in Copeland.10 38. Turing, A.M. Intelligent Machinery (1948); in Copeland.10 39. Wolfram, S. Undecidability and intractability in theoretical physics. Physical Review Letters 54, 8 (Feb. 1985), 735–738. 40. Yao, A.C.C. Classical physics and the Church-Turing thesis. Journal of the ACM 50, 1 (Jan. 2003), 100–105. B. Jack Copeland ([email protected]) is Distinguished Professor of Philosophy at the University of Canterbury in Christchurch, New Zealand, and Director of the Turing Archive for the History of Computing, also at the University of Canterbury. Oron Shagrir ([email protected]) is Schulman Professor of Philosophy and Cognitive Science at the Hebrew University of Jerusalem, Jerusalem, Israel. Copyright held by the authors. Publication rights licensed to ACM. $15.00
  • 63. classical concept, saying, “[E]quilibrat- ing can be so easily, reproducibly, and mindlessly accomplished” that we may “take the operation of equilibrating as an effective one,” even if “the functions computable in principle given Turing’s operations and equilibrating include non-recursive functions.” Over the years, there have been sever- al departures from Turing’s 1936 analy- sis, as the needs of computer science led to a broadening of the algorithm concept. For example, Turing’s fourth axiom, which bounds the number of parts of a system that can be changed simultaneously, became irrelevant when the algorithm concept broadened to cover parallel computations. The fu- ture computational landscape might conceivably include more extensive re- visions of the concept, if, for example, physicists were to discover that hard- ware effective in Doyle’s extended sense is a realistic possibility. If such hardware were to be devel- oped—hardware in which operations are effective in the sense of being “eas- ily, reproducibly, and mindlessly ac- complished” but not bounded by Turing computability—then would the appro- priate response by computer scientists be to free the algorithm concept from CTT-A? Or should CTT-A remain as a constraint on algorithms, with instead
  • 64. two different species of computation be- ing recognized, called, say, algorithmic computation and non-algorithmic com- putation? Not much rides on a word, but we note we prefer “effective computa- tion” for computation that is bounded by Turing computability and “neo-ef- fective computation” for computation that is effective in Doyle’s sense and not bounded by Turing computability, with “neo” indicating a new concept related to an older one. The numerous examples of notional “hypercomputers” (see Copeland9 for a review) prompt similar questions. In- terestingly, a study of the expanding lit- erature about the concept of an infinite- time Turing machine, introduced by Joel Hamkins and Andy Lewis in 2000, shows that a number of computer sci- entists are prepared to describe the in- finite-time machine as computing the halting function. Perhaps this indicates the concept of computation is already in the process of bifurcating into “effec- tive” and “neo-effective” computation. 12oclockscholar Highlight 12oclockscholar Highlight 12oclockscholar
  • 65. Highlight 12oclockscholar Highlight Turing Machines Chapter 17 Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs
  • 66. unrestricted grammars Turing Machines SD Language Unrestricted Grammar Turing Machine L Accepts Grammars, SD Languages, and Turing Machines Turing Machines Can we come up with a new kind of automaton that has two properties: ● powerful enough to describe all computable things unlike FSMs and PDAs. ● simple enough that we can reason formally about it like FSMs and PDAs, unlike real computers. Turing Machines At each step, the machine must: ● choose its next state, ● write on the current square, and ● move left or right.
  • 67. A Formal Definition ● K is a finite set of states; a subset. (K - non- state char char (R or L) Notes on the Definition 1. The input tape is infinite in both directions. deterministic Turing machines. a halting state. 4. Turing machines do not necessarily halt (unlike FSM's and PDAs). Why? To halt, they must enter a halting state. Otherwise they loop.
  • 68. 5. Turing machines generate output so they can compute functions. An Example M takes as input a string in the language: and adds b’s as required to make the number of b’s equal the number of a’s. The input to M will look like this: The output should be: The Details s = 1, Notes on Programming The machine has a strong procedural feel, with one phase coming after another. There are common idioms, like scan left until you find a blank
  • 69. There are two common ways to scan back and forth marking things off. Often there is a final phase to fix up the output. Even a very simple machine is a nuisance to write. Halting ● A DFSM M, on input w, is guaranteed to halt in |w| steps. ● A PDA M, on input w, is not guaranteed to halt. To see why, consider again M = But there exists an algorithm to construct an equivalent PDA A TM M, on input w, is not guaranteed to halt. And there exists no algorithm to construct one that is guaranteed to do so. Formalizing the Operation A configuration of a Turing machine - - {q}))
  • 70. state up scanned after to scanned square scanned square square Example Configurations (1) (q, ab, b, b) = (q, abbb) (2) = (q, qaabb) Initial configuration is (s, qw). Yields (q1, w1) |- step. For any TM M, let |-M* be the reflexive, transitive closure of |- M. Configuration C1 yields configuration C2 if: C1 |-M* C2. A path through M is a sequence of configurations C0, C1, …, C0 |-M C1 |-M C2 |-M … |-M Cn. A computation by M is a path that halts. If a computation is of length n or has n steps, we write:
  • 71. C0 |-Mn Cn A Notation for Turing Machines (1) Define some basic machines ● Symbol writing machines that writes x. ● Head moving machines R: L: f ● Machines that simply halt: h, which simply halts. n, which halts and rejects. y, which halts and accepts. Next we need to describe how to: ● Check the tape and branch based on what character we see, and ● Combine the basic machines to form larger ones. To do this, we need two forms: ● M1 M2 ● M1 <condition> M2
  • 72. Checking Inputs and Combining Machines A Notation for Turing Machines, Cont'd Example: >M1 a M2 b M3 ● Start in the start state of M1. ● Compute until M1 reaches a halt state. ● Examine the tape and take the appropriate transition. ● Start in the start state of the next machine, etc. ● Halt if any component reaches a halt state and has no place to go. ● If any component fails to halt, then the entire machine may fail to halt. a M1 M2 becomes M1 a, b M2 b becomes M1 M2 or M1M2 Variables becomes except a and x takes on the value of
  • 73. the current square M1 a, b M2 becomes and x takes on the value of the current square M1 x = y M2 if x = y then take the transition if the current square is not blank, go right and copy it. Shorthands Some Useful Machines Find the first blank square to the right of the current square. Find the first blank square to the left of the current square. Find the first nonblank square to the right of the current square. Find the first nonblank square to the left of the current square Rq Lq
  • 74. More Useful Machines La Find the first occurrence of a to the left of the current square. Ra,b Find the first occurrence of a or b to the right of the current square. La,b a M1 Find the first occurrence of a or b to the left of the current square, b then go to M1 if the detected character is a; go to M2 if the M2 detected character is b. Find the first occurrence of a or b to the left of the current square and set x to the value found. Find the first occurrence of a or b to the left of the current square, set x to the value found, move one square to the right, and write x (a or b). An Example Input: {1}* Output: qw3 Example: q111qqqqqqqqqqqqqq Input: quqwq
  • 75. Output: quwq Example: qbaqabbaqqqqqqqqqqqq Turing Machines as Language Recognizers Convention: We will write the input on the tape as: qwq, w contains no qs The initial configuration of M will then be: (s, qw) ● M accepts a string w iff (s, qw) |- ● M rejects a string w iff (s, qw) |- Turing Machines as Language Recognizers For any string w A language L is decidable iff there is a Turing machine M that decides it. In this case, we will say that L is in D.
  • 76. A Deciding Example Example: qaabbccqqqqqqqqq Example: qaaccbqqqqqqqqq Another Deciding Example Example: qabbcabbqqq Example: qacabbqqq Semideciding a Language M may either: reject or fail to halt. A language L is semidecidable iff there is a Turing machine that semidecides it. We define the set SD to be the set of all semidecidable languages.
  • 77. Example of Semideciding We can build M to semidecide L: 1. Loop 1.1 Move one square to the right. If the character under the read head is an a, halt and accept. In our macro language, M is: Example of Semideciding Loop: 1.1 Move one square to the right. 1.2 If the character under the read/write head is an a, halt and accept. 1.3 If it is q, halt and reject. In our macro language, M is: Computing Functions qw). Define M(w) = z iff (s, qw) |-M* (h, qz). L
  • 78. ● If w is an input on which f is defined: M(w) = f(w). ● Otherwise M(w) does not halt. A function f is recursive or computable iff there is a Turing machine M that computes it and that always halts. Example of Computing a Function Input: qwqqqqqq Output: qwwq Define the copy machine C: qwqwq e: quwq Example of Computing a Function Input: qwqqqqqq Output: qwwq
  • 79. Define the copy machine C: qwqwq quwq 2.unknown Computing Numeric Functions For any positive integer k, valuek(n) returns the nonnegative integer that is encoded, base k, by the string n. For example: ● value2(101) = 5. ● value8(101) = 65. TM M computes a function f from ℕm to ℕ iff, for some k: valuek(M(n1;n2;…nm)) = f(valuek(n1), … valuek(nm)). Computing Numeric Functions Example: succ(n) = n + 1
  • 80. Input: qnqqqqqq Output: qn+1q q1111qqqq Output: q10000q Computing Numeric Functions Example: succ(n) = n + 1 Input: qnqqqqqq Output: qn+1q q1111qqqq Output: q10000q Not All Functions Are Computable Let T be the set of all TMs that: ● Halt on a blank tape. ● S(n): the maximum number of steps that are executed by any element of T with n-nonhalting states, when started on a blank tape, before it halts. by any element of T with n-nonhalting states, when it halts.
  • 81. Why Are We Working with Our Hands Tied Behind Our Backs? Turing machines Are more powerful than any of the other formalisms we have studied so far. Turing machines Are a lot harder to work with than all the real computers we have available. Why bother? The very simplicity that makes it hard to program Turing machines makes it possible to reason formally about what they can do. If we can, once, show that anything a real computer can do can be done (albeit clumsily) on a Turing machine, then we have a way to reason about what real computers can do.
  • 82. The Chomsky Hierarchy and Beyond Chapter 24 Is There Anything In Between PDAs and Turing Machines? PDAs aren’t powerful enough. Turing machines lack even a decision procedure for the acceptance problem. Linear Bounded Automata A linear bounded automaton is an NDTM the length of whose tape is equal to |w| + 2. Example: qaabbccqqqqqqqqq
  • 83. Linear Bounded Automata A language is context sensitive iff there exists an LBA that accepts it. Note: It is not known whether, for every nondeterministic LBA there exists an equivalent deterministic one. The Membership Question for LBAs Let L = {<B, w> : LBA B accepts w}. Is L in D? … q a b b a q … q0 How many distinct configurations of B exist? The Membership Question for LBAs Let L = {<B, w> : LBA B accepts w}. Is L in D? … q a b b a q …
  • 84. q0 How many distinct configurations of B exist? The Membership Question for LBAs Theorem: L = {<B, w> : LBA B accepts w} is in D. Proof: If B runs for more than MaxConfig steps, it is in a loop and it is not going to halt. M is an NDTM that decides L: M(<B, w>) = 1. Simulate all paths of B on w for MaxConfig steps or until B halts, whichever comes first. 2. If any path accepted, accept. Else reject. Since, from each configuration of B there are a finite number of branches and each branch is of finite length, M will be able to try all branches of B in a finite number of steps. M will accept the string <B, w> if any path of B accepts and it will reject the string <B, w> if every path of B on w either rejects or loops.
  • 85. Grammars, Context-Sensitive Languages, and LBAs CS Language Grammar LBA L Accepts Context-Sensitive Grammars and Languages A context- grammar in which R satisfies the following constraints: ● The left-hand side of every rule contains at least one nonterminal symbol. ● No length-reducing rules, with one exception: Consider: /* length reducing Context-Sensitive Grammars and Languages A context- grammar in which R satisfies the following constraints: ● The left-hand side of every rule contains at least one nonterminal symbol. ● No length-reducing rules, with one exception:
  • 86. If it does, then S does not occur on the right hand side of any rule. Context-Sensitive Grammars and Languages Example of a grammar that is not context-sensitive: An equivalent, context-sensitive grammar: Context-Sensitive Grammars and Languages Example of a grammar that is not context-sensitive: An equivalent, context-sensitive grammar: AnBnCn
  • 87. /* Not a CS rule AnBnCn Not a CS grammar. But there is an equivalent one that isolates the epsilon rule at the beginning. Equal Numbers of a’s, b’s, and c’s Again, not a CS grammar. But easy to fix. WW =
  • 88. /* Generate the wall exactly once. /* Generate wCwR. /* Generate a pusher P /* Push one character to the right to get ready to jump. b /* Hop a character over the wall. WW Not a CS grammar. Harder to fix because it’s no longer possible to erase the pushers and the C. So they have to be encoded as part of another symbol. The Membership Question for Context-Sensitive Grammars Let L = {<G, w> : csg G generates string w}. Is L in D? Example:
  • 89. L = {<G, w> : CSG G generates string w} is in D. Proof: We construct an NDTM M to decide D. M will explore all derivations that G can produce starting with S. Eventually one of the following things must happen on every derivation path: ● G will generate w. ● G will generate a string to which no rules can be applied. ● G will keep generating strings of the same length. Since there are a finite number of strings of a given length, G must eventually generate the same one twice. The path can be terminated since it is not getting any closer to generating w. ● G will generate a string s that is longer than w. Since G has only a finite number of choices at each derivation step and since each path that is generated must eventually halt, the Turing machine M that explores all derivation paths will eventually halt. If at least one path generates w, M will accept. If no path generates w, M will reject. Context-Sensitive Languages and Linear Bounded Automata Theorem: The set of languages that can be generated by a context-sensitive grammar is identical to the class that can be accepted by an LBA. Proof: (sketch)
  • 90. ● Given a CSG G, build a two-track LBA B such that L(B) = L(G). On input w, B keeps w on the first track. On the second track, it nondeterministically constructs all derivations of G. As soon as any derivation becomes longer than |w|, stop. ● From any LBA B, construct a CSG that simulates B. Languages and Machines SD D Context-sensitive Context-free DCF Regular FSMs DPDAs NDPDAs LBAs Turing machines
  • 91. Theorem: The CS languages are a proper subset of D. Proof: We divide the proof into two parts: ● Every CS language is in D: Every CS language L is accepted by some LBA B. The Turing machine that performs a bounded simulation of B decides L. ● There exists at least one language that is in D but that is not context-sensitive: It is not easy to do this by actually exhibiting such a language. But we can use diagonalization to show that one exists. Context-Sensitive Languages vs. D Using Diagonalization Create an encoding for context-sensitive grammars: EnumG is the lexicographic enumeration of all encodings of Enuma,b is the lexicographic enumeration of {a, b}*. Because {<G, w> : CSG G generates string w}, is in D, there
  • 92. exists a TM that can compute the values in this table as they are needed.String 1String 2String 3String 4String 5…….Grammar 11 0000…..Grammar 201 000…..Grammar 3110 00…..Grammar 40010 0….. …11100….. Diagonalization, Continued ● Recursive because it is decided by the following Turing machine M: M(x) = 1. Find x in the list Enuma,b. Let its index be i. 2. Lookup cell (i, i) in the table. 3. If the value is 0, x is not in L(Gi) so x is in L. Accept. 4. If the value is 1, x is in L(Gi) so x is not in L. Reject. ● Not context-sensitive because it differs, in the case of at least one string, from every language in the table and so is not
  • 93. generated by any context-sensitive grammar. Theorem: The context-free languages are a proper subset of the context-sensitive languages. Proof: We divide the proof into two parts: ● We know one language, AnBnCn, that is context-sensitive but not context-free. ● If L is a context-free language then there exists some context-free gr – -reducing rules, so is a CSG. ● -sensitive grammar and it generates L. ● So L is a context-sensitive language. Context-Sensitive vs Context-Free The context-sensitive languages are closed under: ● Union ● Concatenation ● Kleene star
  • 94. ● Intersection ● Complement Closure Properties Theorem: The CSLs are closed under union. L(G2): If L1 and L2 are CSLs, then there exist CSGs: R2, S2) such that L1 = L(G1) and L2 = L(G2). Rename the nonterminals of G1 and G2 so that they are disjoint and neither includes the symbol S. G will contain all the rules of both G1 and G2. Add to G a new start symbol, S, and two new rules: S S2. R1 S2}, S). Closure Under Union Theorem: The CSLs are closed under concatenation. Proof: By construction of a CSG G such that L(G) = L(G1) L(G2):
  • 95. If L1 and L2 are CSLs, then = L(G2). Let G contain all the rules of G1 and G2. Then add a new start S2. Problem: S S1 S2 a a A a a a The subtrees may interact. Closure Under Concatenation rules in R are of one of the following two forms: - - is not in nonterminal normal form. is not in nonterminal normal form. Nonterminal Normal Form
  • 96. Theorem: Given a CSG G, there exists an equivalent nonterminal Proof: The proof is by construction. converttononterminal(G: CSG) = symbol 3. Modify each of the original rules so that every occurrence of a terminal symbol c is replaced by the nonterminal symbol Tc. Nonterminal Normal Form becomes becomes S S1 S2 a a A a a a Now the subtrees will be: Closure Under Concatenation S
  • 97. S1 S2 a a A Ta a a We prevent them from interacting by standardizing apart the nonterminals. To build a grammar G such that L(G) = L(G1) L(G2), we do the following: 1. Convert both G1 and G2 to nonterminal normal form. 2. If necessary, rename the nonterminals of G1 and G2 so that the two sets are disjoint and so that neither includes the symbol S. R1 S2}, S). Concatenation, Continued The membership problem is decidable, although no efficient procedure is known. Other questions are not: ● Is L empty? ● Is the intersection of two CSLs empty? ● Are two CSLs equal? Decision Procedures
  • 98. The Chomsky Hierarchy The idea: constrain rule firing by: ● defining features that can be passed up/down in parse trees, and ● describing feature-value constraints that must be satisfied before the rules can be applied. Attribute, Feature and Unification Grammars G will exploit one feature, size. G = ({S, A, B, C, a, b, c},{a, b, c}, R, S), where: R = { (size(A) = size(B) = size(C)) Applying G bottom up: aaabbbccc AnBnCn * The bear like chocolate.
  • 99. [ CATEGORY NP [ CATEGORY VP PERSON THIRD PERSON THIRD NUMBER SINGULAR] NUMBER SINGULAR] Replace atomic terminal symbols like bear, with: [ CATEGORY N LEX bear PERSON THIRD NUMBER SINGULAR] A Unification Grammar for Subject/Verb Agreement [ CATEGORY NP [ CATEGORY VP NUMBER x1 NUMBER x1 PERSON x2 ] PERSON x2 ] So an NP and a VP can be combined to form an S iff they have matching values for their NUMBER and PERSON features. A Unification Grammar for Subject/Verb Agreement An L- constants, to which no rules will apply, ● R is a set of rules,
  • 100. in order for the rule to fire. If they are equ checked. fires. Lindenmayer Systems Rules Fire in Parallel Using a standard grammar: Given: A S a B B a B S a B B a B S a Ca B a etc. Using an L-system: Given: A S a B B a B F a Ha Ha a L-system-interpret(G: L-system) = 1. Set working- 2. Do forever: 2.1 Output working-string. 2.2 new-working-string 2.3 For each character c in working-string do:
  • 101. If possible, choose a rule r whose left-hand side matches c and where c’s neighbors (in working-string) satisfy any context constraints included in r. If a rule r was found, concatenate its right-hand side to the right end of new-working-string. If none was found, concatenate c to the right end of new-working-string. 2.4 working-string = new-working-string. A Lindenmayer System Interpreter Let G be the L-system defined as follows: The sequence of strings generated by G begins: 0. I 1. M 2. M I 3. M I M 4. M I M M I 5. M I M M I M I M 6. M I M M I M I M M I M M I An Example Assume:
  • 102. ● It takes one time step for each rabbit to reach maturity and mate. ● The gestation period of rabbits is one time step. ● We begin with one pair of (immature) rabbits. The Fibonacci sequence: Fibonacci0 = 1. Fibonacci1 = 1. For n > 1, Fibonaccin = Fibonnacin-1 + Fibonnacin-2. The L-system model: ● Each I corresponds to one immature pair of rabbits. ● Each M corresponds to one mature pair. ● Each string is the concatenation of its immediately preceding string (the survivors) with the string that preceded it two steps back (the breeders). Fibonacci’s Rabbits 0. I 1. M 2. M I 3. M I M 4. M I M M I 5. M I M M I M I M 6. M I M M I M I M M I M M I Fibonacci’s Rabbits Let G be the L-system defined as follows:
  • 103. -}. – A – B, Notice that + and – are constants. The sequence of strings generated by G begins: 1. A 2. B – A – B 3. A + B + A – B – A – B – A + B + A 4. B – A – B + A + B + A + B – A – B – A + B + A – B – A – B – A + B + A – B – A – B + A + B + A + B – A – B Sierpinski Triangle ● Choose a line length k. ● A and B mean move forward, drawing a line of length k. ● – Strings 3, 4, 8, and 10 then correspond to turtle programs that can draw the following sequence of figures (scaling k appropriately): Interpreting Strings as Drawing Programs Sierpinski Triangles
  • 104. Let G be the L-system defined as follows: –, [, ]}. R = { – F ] F [ + F ] [ F ] }. The sequence of strings generated by G begins: 1. F 2. F [ – F ] F [ + F ] [ F ] 3. F [ – F ] F [ + F ] [ F ] [ – F [ – F ] F [ + F ] [ F ] ] F [ – F ] F [ + F ] [ F ] [ + F [ – F ] F [ + F ] [ F ] ] [ F [ – F ] F [ + F ] [ F ] ] Modelling Plant Growth We can interpret these strings as turtle programs by choosing a line follows: ● F means move forward, drawing a line of length k. ● – ● [ means push the current pen position and direction onto the stack. ● ] means pop the top pen position/direction off the stack, lift up the pen, move it to the position that is now on the top of the stack, put it back down, and set its direction to the one on the top of the stack.
  • 105. 3. F [ – F ] F [ + F ] [ F ] [ – F [ – F ] F [ + F ] [ F ] ] F [ – F ] F [ + F ] [ F ] [ + F [ – F ] F [ + F ] [ F ] ] [ F [ – F ] F [ + F ] [ F ] ] Interpreting Strings as Drawing Programs Trees Trees 1.bin Real Plants http://algorithmicbotany.org/papers/#abop These two images from the main page: http://algorithmicbotany.org/papers/#abop Let G be the L-system defined as follows: R = {
  • 106. Sierpinski Triangles, Again Theorem: Context-sensitive L-systems and Turing machines can simulate each other. Proof: The computation of any L-system can be simulated by a Turing machine that implements the algorithm L-system- interpret. So it remains to show the other direction, by construction. We show that deterministic TM M, on input w, halts in some halting state q and with tape contents v iff L-system L converges to the static string qv. Define L as follows: nd h, plus one distinct symbol for each nonhalting state of M. Assume that 0 encodes M’s start state. Equivalence of Context-Sensitive L-Systems and Turing Machines qq0qwqq.
  • 107. Let the rules of L encode M’s transitions. The action of a Turing machine is very local. Consider: ga4bcde. The read/write head can move one square and the character under it can change. To decide how to rewrite some character in the working string, it is sufficient to look at one character to its left and two to its right. If there is no state symbol in that area, the symbol gets rewritten as itself (no rule needed). For all other combinations, add to R rules that cause the system to behave as M behaves. Finally, add rules so that, if h, y, or n is generated, it will be pushed all the way to the left, leaving the rest of the string unchanged. Add no other rules to R. L will converge to qv iff M halts, in state q, with v on its tape. Defining L, Continued IN SD OUT Semideciding TM H Memory: infinite unconstrained D Deciding TM anbncn Diagonalize Memory: |w|, or
  • 108. infinite unconstrained Context-Free Pumping Closure CF grammar anbn Memory: infinite PDA stack Closure Regular Regular Expression a*b* Pumping FSM Closure Finite Memory: none Onion Diagram/Chomsky Hierarchy Semideciding a Language Let SM be the input alphabet to a TM M. Let L Í SM*. M semidecides L iff, for any string w Î SM*: ● w Î L ® M accepts w ● w Ï L ® M does not accept w. M may either: reject or fail to halt. A language L is semidecidable iff there is a Turing machine that semidecides it. SD is the set of all semidecidable languages, and is the outermost ring on the onion diagram. The SD
  • 109. languages are also called the recursively enumerable languages, more about enumerability later. M decides L iff, for any string w Î SM*: ● w Î L ® M accepts w ● w Ï L ® M rejects w. A language L is decidable iff there is a Turing machine that decides it. D is the set of all decidable languages, and is the next ring in from SD on the onion diagram. The D languages are also called the recursive languages. Given L ∈ D, is L ∈ SD? • Sample language hierarchy questions that could easily appear on an exam: T/F If L contains a finite number of elements then it must be semidecidable. Because all finite languages are RLS, and if L ∈ RLs then L ∈ SD However, our focus is on the D and SD languages involving string encodings of TMs, and whose characteristic function defines the behavior of the encoded machine. T/F L ∈ SD → L ∈ D Because D ⊂ SD. We will prove that there is a language L such that L ∈ SD and L ∉ D. Are We Done?