# IOTA Glossary
| Term | Definition | Reference |
| -----| ---------- | --------- |
| IOTA |IOTA is an open-source, permission-less distributed ledger. Its protocol is a directed acyclic graph (DAG) called the "Tangle”|[wikipedia:IOTA(Distributed Ledger Technology)](https://en.wikipedia.org/wiki/IOTA_(Distributed_Ledger_Technology))|
|DAG|Directed acyclic graph(有向無環圖)|[Directed Acyclic Graph](http://www.csie.ntnu.edu.tw/~u91029/DirectedAcyclicGraph.html)|
|Tangle|The Tangle is a public ledger within which IOTA transactions are stored. It is decentralized such that no central entity is in control of the network, which is maintained by a network of nodes, organized according to mesh networking topology.|[wikipedia:IOTA(Distributed Ledger Technology)](https://en.wikipedia.org/wiki/IOTA_(Distributed_Ledger_Technology))|
|minWeightMagnitude|The amount of validation that you require before considering a transaction confirmed||
|indirectly approves|No directed edge between transaction but there is a directed path of length at least connected.|[IOTA-Whitepaper-ver-0.6-page-2](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|genesis transaction|Approved (directly or indirectly) by all other transactions.|[IOTA-Whitepaper-ver-0.6-page-2](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|sites|transactions represented on the tangle graph|[IOTA-Whitepaper-ver-0.6-page-2](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|nodes|nodes are entities that issue transactions|[IOTA-Whitepaper-ver-0.6-page-2](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|weight|the weight may assume only values 3^n, where n is positive integer and belongs to some nonempty interval of acceptable values|[IOTA-Whitepaper-ver-0.6-page-4](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|tips|unapproved transactions|[IOTA-Whitepaper-ver-0.6-page-4](http://www.tangleblog.com/wp-content/uploads/2016/11/IOTA_Whitepaper.pdf)|
|nonce|an arbitrary number that may only be used once. often random or pseudo-random numbers|[Cryptographic nonce](https://en.wikipedia.org/wiki/Cryptographic_nonce)|
|Quantum Proof|IOTA uses hash-based signatures instead of elliptic curve cryptography (ECC). Not only are hash-based signatures much faster than ECC, they also greatly simplify the signing and verification process and reduce overall complexity of the Tangle protocol.|[An introduction to IOTA](http://iotasupport.com/whatisiota.shtml)|
|testnet|The IOTA Foundation will utilize this testnet to thoroughly review and test more experimental features (automated snapshotting and IXI for example will be tested soon)|[iotaledger/iri](https://github.com/iotaledger/iri)|
|Snapshotting|Grouping several transfers to the same address into 1 record, which leads to a smaller storage requirement overall.|[IOTA Development Roadmap](https://blog.iota.org/iota-development-roadmap-74741f37ed01)|
|revalidate|sometimes the growth of MilestoneIndex value may stay for hours or stop for some reasons (for example - database corruption), If the value stop but all neighbors are working well (observed by the getNeighbors Restful API command) a command line options of iri (IOTA reference implementation) --revalidate may be helpful for check and fix the issue.|[IRI.java](https://github.com/iotaledger/iri/blob/dev/src/main/java/com/iota/iri/IRI.java#L119)|
|MCMC(Markov chain Monte Carlo)|In statistics, Markov chain Monte Carlo (MCMC) methods are a class of algorithms for sampling from a probability distribution based on constructing a Markov chain that has the desired distribution as its equilibrium distribution.|[wikipedia:Markov chain Monte Carlo](https://en.wikipedia.org/wiki/Markov_chain_Monte_Carlo)|
|Coordinator|Protect the network until it grows strong enough to sustain against a large scale attack from those who own GPUs.(until 2017-07-05, all)|[THE TECH BEHIND IOTA EXPLAINED](http://www.tangleblog.com/2017/01/25/the-tech-behind-iota-explained/)|
|transactionsToRequest|Is the queue of transaction your node know about (by their hash), but doesn't have them yet.for example, you attach a transaction - it references 2 transactions - branch & trunk by their hash, if a node doesn't have one of those referenced transactions, it will add it to request queue.these transactions are requested from neighbors.|[@alon.elmaliah says in developer channel of IOTA slack](https://iotatangle.slack.com/archives/C5B3KGGCX/p1503513403000451)|
| IRI | 全名為 The IOTA Reference Implementation (IRI),以 Java 開發,作為 IOTA 核心節點(client node) 的用途。主要功能在於與 IOTA 網路進行通訊、遞送交易資訊,而因為安全的因素,僅開放有限的 API 給使用者,以及用來連結遠端的其他節點之用。 | [IOTA Glossary @iota.readme.io](https://iota.readme.io/docs/glossary) |
| iota.lib.* | IOTA 函式庫,提供給開發人員開發 IOTA 相關應用時使用,包含交易處理、加密相關功能 ... 等等,目前以 **iota.lib.js** 此函式庫最為成熟 & 完整。 | [IOTA Glossary @iota.readme.io](https://iota.readme.io/docs/glossary) |