loader image
WhatsApp Destek
Turing Complete

Turing Complete, gerekli talimatlarla birlikte yeterli zaman ve bellek verildiğinde, ne kadar karmaşık olursa olsun herhangi bir hesaplama problemini çözebilen bir makineyi ifade eder. Terim normalde modern programlama dillerini tanımlamak için kullanılır çünkü C ++, Python, JavaScript, vb. çoğu modern programlama dili Turing Complete'dir.
Turing Makinesi nedir?
Alan Turing, bir gün tüm sorunları çözebilecek bir makine yapılacağı hipotezini ortaya atan kişidir. Dolayısıyla bu makineye Turing Makinesi ismi verilmiştir. En büyük matematikçi ve bilgisayar bilimcilerinden Alan Turing’in geliştirdiği makine, her türlü teorik hesaplamayı yapabilmektedir. Herhangi bir programı çalıştırabilen ve her türlü sorunu çözebilen bir bilgisayarın nasıl oluşturulacağını açıkladı ancak bu cihaz ile işlemin ne kadar süreceğine dair net bir veri yoktur. Bazı işlemler sadece birkaç dakika sürerken bazıları 1000 yıl sürebilir ancak sorunun er ya da geç (hatta evren yok edildikten sonra bile) çözüleceğini garanti eder.
Turing Makinesi Nasıl Çalışır?
Alan, bu makineyi ikili kodları (0 ve 1) kullanan bir bant olarak hayal etmiştir. Bu makine her kareyi tek tek okuyabilecek bir okuma / yazma başlığına sahip olacak şekilde tasarlanmıştır. Alan’a göre bu kodlar makineye çözülmesi gereken soruyu sorarken, makine aynı anda sonuçları bu bantlara kaydedecekti. Dolayısıyla çözüm ne kadar uzunsa o kadar banta ihtiyaç duyulacaktı.
Makine başlığı bant boyunca hareket ederken, makine nasıl tepki vereceğini belirleyen basit bir talimatlar dizesi izler. Kaseti okur, talimatları izler ve ilerledikçe yeni bir kod yazmak için belirli bir eylem gerçekleştirir. Bu ortaya çıkan yeni kod kalıbı, sorunun cevabıdır. Turing’in bu varsayımsal makinesi, kodla ifade edilebilen (ve hesaplanabilir bir cevabı olan) herhangi bir hesaplama problemine cevap verebilecek kapasitededir.
Bir cihaz veya programlama dili, herhangi bir programı çalıştırarak veya Turing Makinesi’nin çalıştırabileceği veya çözebileceği herhangi bir sorunu çözerek bir Turing Makinesi’ni işlevi görebildiğinde, Turing Complete olarak kabul edilir. Öte yandan, bir cihaz veya programlama dili bunu yapamıyorsa, bu cihaza veya programlama diline Turing Incomplete denir.
Basit bir hesap makinesi, yalnızca birkaç tür hesaplama yapabildiğinden, Turing Incomplete olan bir sistem örneğidir. Buna karşılık, programlanabilir bir bilimsel hesap makinesi bir Turing Makinesi olarak kabul edilebilir.
Blok zincirleri ve Turing Completeness
Blokzinciri teknolojisinin bazı uygulamaları Turing Complete iken, bazıları ise Turing Incomplete'dir. Bu, uygulanan komut dosyası teknolojisine göre değişir. Örneğin, Bitcoin'de kullanılan yazılım dili kasıtlı olarak Turing Incomplete olarak tasarlanmıştır. Bunun arkasındaki neden Turing Incomplete olarak amacına hizmet edebilmesidir. Eğer yazılım Turing Complete olsaydı, bu yazılımı daha karmaşık yapardı. Bu durumun sonucu olarak da daha karmaşık problemler ortaya çıkabilirdi. Yazılımı basit tutarak, geliştiriciler, yazılımlarının duruma göre nasıl tepki vereceğini tahmin edebilirler.
Diğer bir yandan Ethereum ise Turing Complete bir blok zinciri olarak tasarlanmıştır. Bunun arkasında ki neden Turing Incomplete bir yazılımın akıllı sözleşmeleri anlayacak kapasiteye sahip olmamasıdır. Turing Complete olarak Ethereum, henüz var olmayan anlaşmalar da dahil olmak üzere gelecekteki herhangi bir anlaşmayı anlama ve uygulama yeteneğine sahiptir. Başka bir deyişle, Ethereum'un Turing Complete olması doğru talimatlara, yeterli zamana ve işlem gücüne sahip olduğu sürece kod tabanını hemen hemen her görevi gerçekleştirmek için kullanabileceği anlamına gelir.
Tartışma, Ethereum'un "Bitcoin Blockchain Turing Complete değildir, Ethereum öyledir" diyerek kendisini tanıtması ve pazarlamasıyla başladı ve aynı lige tüm yeni Blockchainler katıldı. Ethereum, merkezi olmayan uygulamalar için bir platformdur. Yani, bu uygulamaları yürütmek için merkezi bir varlık veya sunucu gerekmez. Uygulama birden fazla bilgisayarda çalışır ve bu nedenle onları kaldırmanın bir yolu yoktur. Bu tür uygulamaları yazmak için akıllı sözleşmelere ihtiyacınız olur. Akıllı sözleşmeler, Solidity in Ethereum ve Solidity is Turing Complete ile yazılır. Ethereum'un kurucusu Vitalik Buterin, Turing Complete Programlama dilini Döngülere izin veren dil olarak tanımlar.
Bitcoin Blockchain betik dilinin neden döngüleri desteklemediğinin arkasındaki tasarım kararı, spamleri önlemektir. Bazı kodlar milyonlarca yürütme gerektirebileceğinden ve ağa aşırı yük binebileceğinden, döngüler Blockchain'de tehlikeli olabilir. Ethereum, her işlem için ücret getirerek bunu çözmüştür. Bu nedenle, yürütülecek ifadeler ne kadar çoksa, ücret de o kadar fazladır.
Bitcoin, basit işlevler için tasarlanmıştır ve daha çok kripto varlık ve yalnızca transfer değerleri olarak hareket eder. Bitcoin Blockchain aslında "Turing Complete" dir.
Turing Completeness kavramının döngülerle hiçbir ilgisi yoktur. Ne kadar büyük olursa olsun, yalnızca her sorunun çözümüne vurgu yapar. Turing completeness elde etmek için Bitcoin Blockchain'in kullanılabileceği birkaç yol vardır.
Hesaplanabilirlik teorisinde, herhangi bir Turing Makinesi’ni simüle etmek için kullanılabiliyorsa, bir veri işleme kuralları sisteminin (bir bilgisayarın komut seti, bir programlama dili veya bir hücresel otomat gibi) Turing Complete (tamamlanmış) veya hesaplama açısından evrensel olduğu söylenir.
Bu, bu sistemin diğer veri işleme kural kümelerini tanıyabileceği veya karar verebileceği anlamına gelir. Turing Complete, böyle bir veri işleme kural setinin gücünü ifade etmenin bir yolu olarak kullanılır. Bugün neredeyse tüm programlama dilleri Turing-complete’dir. Kavram, İngiliz matematikçi ve bilgisayar bilimcisi Alan Turing'in adını almıştır.
İlgili bir kavram Turing denkliğidir. Eğer P, Q'yu simüle edebiliyorsa ve Q, P'yi simüle edebiliyorsa, iki P ve Q bilgisayarına eşdeğer denir. Church-Turing tezi, değerleri bir algoritma tarafından hesaplanabilen herhangi bir fonksiyonun bir Turing Makinesi, ve bu nedenle, herhangi bir gerçek dünyadaki bilgisayar bir Turing Makinesi’ni simüle edebiliyorsa Turing Makinesi’ne eşdeğerdir. Evrensel bir Turing Makinesi, herhangi bir Turing Makinesi’ni simüle etmek ve olası herhangi bir gerçek dünya bilgisayarının hesaplama yönlerini genişletmek için kullanılabilir.
Bir şeyin Turing Complete olduğunu göstermek için, onun bazı Turing Complete sistemleri simüle etmek için kullanılabileceğini göstermek yeterlidir. Örneğin zorunlu bir dil ya da koşullu dallanma gibi. Elbette hiçbir fiziksel sistem sonsuz belleğe sahip olamaz ancak sonlu belleğin sınırlaması göz ardı edilirse, çoğu programlama dili aksi takdirde Turing-complete’dir.
bitcoin
Bitcoin (BTC) $ 108,033.95
ethereum
Ethereum (ETH) $ 3,893.98
tether
Tether (USDT) $ 1.00
bnb
BNB (BNB) $ 1,144.97
xrp
XRP (XRP) $ 2.32
solana
Solana (SOL) $ 184.65
usd-coin
USDC (USDC) $ 1.00
staked-ether
Lido Staked Ether (STETH) $ 3,890.09
tron
TRON (TRX) $ 0.315793
dogecoin
Dogecoin (DOGE) $ 0.188295
cardano
Cardano (ADA) $ 0.64419
wrapped-steth
Wrapped stETH (WSTETH) $ 4,732.49
wrapped-bitcoin
Wrapped Bitcoin (WBTC) $ 108,145.98
wrapped-beacon-eth
Wrapped Beacon ETH (WBETH) $ 4,201.04
figure-heloc
Figure Heloc (FIGR_HELOC) $ 1.04
ethena-usde
Ethena USDe (USDE) $ 0.999576
chainlink
Chainlink (LINK) $ 17.42
wrapped-eeth
Wrapped eETH (WEETH) $ 4,198.88
bitcoin-cash
Bitcoin Cash (BCH) $ 504.28
stellar
Stellar (XLM) $ 0.311938
hyperliquid
Hyperliquid (HYPE) $ 36.75
sui
Sui (SUI) $ 2.51
weth
WETH (WETH) $ 3,891.65
binance-bridged-usdt-bnb-smart-chain
Binance Bridged USDT (BNB Smart Chain) (BSC-USD) $ 1.00
avalanche-2
Avalanche (AVAX) $ 20.97
leo-token
LEO Token (LEO) $ 9.61
usds
USDS (USDS) $ 1.00
usdt0
USDT0 (USDT0) $ 1.00
coinbase-wrapped-btc
Coinbase Wrapped BTC (CBBTC) $ 108,083.96
hedera-hashgraph
Hedera (HBAR) $ 0.170686
litecoin
Litecoin (LTC) $ 91.70
whitebit
WhiteBIT Coin (WBT) $ 41.35
shiba-inu
Shiba Inu (SHIB) $ 0.00001
ethena-staked-usde
Ethena Staked USDe (SUSDE) $ 1.20
mantle
Mantle (MNT) $ 1.71
monero
Monero (XMR) $ 301.79
the-open-network
Toncoin (TON) $ 2.18
crypto-com-chain
Cronos (CRO) $ 0.147514
polkadot
Polkadot (DOT) $ 3.02
dai
Dai (DAI) $ 0.999297
chainopera-ai
ChainOpera AI (COAI) $ 21.80
uniswap
Uniswap (UNI) $ 6.28
world-liberty-financial
World Liberty Financial (WLFI) $ 0.135353
bittensor
Bittensor (TAO) $ 379.17
okb
OKB (OKB) $ 170.56
aave
Aave (AAVE) $ 223.33
zcash
Zcash (ZEC) $ 205.49
memecore
MemeCore (M) $ 1.95
bitget-token
Bitget Token (BGB) $ 4.67
pepe
Pepe (PEPE) $ 0.000007
ethena
Ethena (ENA) $ 0.403395
blackrock-usd-institutional-digital-liquidity-fund
BlackRock USD Institutional Digital Liquidity Fund (BUIDL) $ 1.00
near
NEAR Protocol (NEAR) $ 2.20
usd1-wlfi
USD1 (USD1) $ 0.999749
jito-staked-sol
Jito Staked SOL (JITOSOL) $ 228.22
paypal-usd
PayPal USD (PYUSD) $ 1.00
susds
sUSDS (SUSDS) $ 1.07
c1usd
Currency One USD (C1USD) $ 1.00
aster-2
Aster (ASTER) $ 1.25
ethereum-classic
Ethereum Classic (ETC) $ 15.81
aptos
Aptos (APT) $ 3.29
binance-peg-weth
Binance-Peg WETH (WETH) $ 3,891.95
ondo-finance
Ondo (ONDO) $ 0.726994
falcon-finance
Falcon USD (USDF) $ 0.995796
jupiter-perpetuals-liquidity-provider-token
Jupiter Perpetuals Liquidity Provider Token (JLP) $ 5.36
worldcoin-wld
Worldcoin (WLD) $ 0.897978
polygon-ecosystem-token
POL (ex-MATIC) (POL) $ 0.1884
htx-dao
HTX DAO (HTX) $ 0.000002
gatechain-token
Gate (GT) $ 15.77
usdtb
USDtb (USDTB) $ 0.999646
kucoin-shares
KuCoin (KCS) $ 13.89
story-2
Story (IP) $ 5.60
binance-staked-sol
Binance Staked SOL (BNSOL) $ 198.41
rocket-pool-eth
Rocket Pool ETH (RETH) $ 4,453.05
arbitrum
Arbitrum (ARB) $ 0.316148
bfusd
BFUSD (BFUSD) $ 0.999872
pi-network
Pi Network (PI) $ 0.205749
internet-computer
Internet Computer (ICP) $ 3.14
hash-2
Provenance Blockchain (HASH) $ 0.033522
tether-gold
Tether Gold (XAUT) $ 4,383.86
algorand
Algorand (ALGO) $ 0.184914
kelp-dao-restaked-eth
Kelp DAO Restaked ETH (RSETH) $ 4,108.83
cosmos
Cosmos Hub (ATOM) $ 3.26
wbnb
Wrapped BNB (WBNB) $ 1,145.63
vechain
VeChain (VET) $ 0.017339
stakewise-v3-oseth
StakeWise Staked ETH (OSETH) $ 4,106.31
kaspa
Kaspa (KAS) $ 0.053583
kinetic-staked-hype
Kinetiq Staked HYPE (KHYPE) $ 36.70
sky
Sky (SKY) $ 0.060251
pax-gold
PAX Gold (PAXG) $ 4,434.68
liquid-staked-ethereum
Liquid Staked ETH (LSETH) $ 4,188.29
pudgy-penguins
Pudgy Penguins (PENGU) $ 0.022041
flare-networks
Flare (FLR) $ 0.017438
lombard-staked-btc
Lombard Staked BTC (LBTC) $ 108,100.96
render-token
Render (RENDER) $ 2.52
sei-network
Sei (SEI) $ 0.205214
renzo-restaked-eth
Renzo Restaked ETH (EZETH) $ 4,128.12
syrupusdc
Syrup USDC (SYRUPUSDC) $ 1.13
pump-fun
Pump.fun (PUMP) $ 0.003463
quant-network
Quant (QNT) $ 83.54