Commit Graph

682 Commits

Author SHA1 Message Date
Andreas Fackler 4b143828dd Add message counting to the simulation. 2018-05-29 15:11:32 +02:00
Andreas Fackler 9de4713de3
Merge pull request #44 from poanetwork/vk-conf-round
Added a CONF round
2018-05-28 13:07:26 +02:00
Vladimir Komendantskiy 2aac22f083 comment updates 2018-05-28 11:54:37 +01:00
Vladimir Komendantskiy 82643fb442 formatting 2018-05-24 19:48:10 +01:00
Vladimir Komendantskiy 67c7bf4f8b updated protobuf serialisation 2018-05-24 19:11:56 +01:00
Vladimir Komendantskiy 111ed03a47 review comments taken into account 2018-05-24 18:52:58 +01:00
Vladimir Komendantskiy 43a47e1f46 lints checked 2018-05-23 23:19:48 +01:00
Vladimir Komendantskiy 72d5cecbb9 Fixed non-termination in the suggested Cobalt fix.
The non-termination was due to the direct use of `bin_values` when invoking the
common coin. The fix amounts to making the CONF round depend only on the subset
of `bin_values` sent in the CONF message.
2018-05-23 23:00:19 +01:00
Vladimir Komendantskiy 751bb57ace CONF round added to Agreement 2018-05-23 18:38:33 +01:00
Andreas Fackler 7ad37f9029
Merge pull request #36 from poanetwork/afck-rust-update
Update Rust, re-enable rustfmt.
2018-05-21 11:43:45 +02:00
Andreas Fackler 9a0622f3f2 Update Rust, re-enable rustfmt. 2018-05-21 11:26:42 +02:00
Vladimir Komendantskiy 4e00894853
Merge pull request #35 from poanetwork/add-error-chain-crate
Added error-chain error handling.
2018-05-21 08:25:37 +01:00
Peter van Nostrand 1930ea8b7d Fixed a typo commst.rs. 2018-05-20 19:52:18 -04:00
Peter van Nostrand 465f17d9a5 Bumped reed-solomon-erasure crate version, fixed Protobuf error in example. 2018-05-20 19:39:47 -04:00
Peter van Nostrand 19b982284b Added error-chain error handling. 2018-05-20 07:51:33 -04:00
Andreas Fackler d223668561
Merge pull request #34 from poanetwork/afck-agreement
Extend tests and fix CommonSubset.
2018-05-19 17:51:02 +02:00
Andreas Fackler ca65a014d6 Use an unambiguous name for proposer ID. 2018-05-19 17:17:02 +02:00
Andreas Fackler ab89dabde9 Add a few explaining comments. 2018-05-19 17:10:30 +02:00
Andreas Fackler b8a2463d1c Extend tests and fix CommonSubset.
Verify termination and more outputs.

`CommonSubset` now instantiates `Agreement` with the correct ID.
2018-05-19 15:56:49 +02:00
Andreas Fackler 8a406dd154
Merge pull request #33 from poanetwork/vk-testnetwork-commonsubset
ported Common Subset tests to TestNetwork
2018-05-19 10:45:23 +02:00
Vladimir Komendantskiy fced73459e upgraded the protobuf dependency to fix a compile error 2018-05-18 22:45:18 +01:00
Vladimir Komendantskiy 962a618ffd ported Common Subset tests to TestNetwork 2018-05-18 22:04:09 +01:00
Vladimir Komendantskiy e4843b496f
Merge pull request #32 from poanetwork/afck-no-protoc
Remove protoc dep, use new MerkleTree methods, fix Agreement.
2018-05-18 14:31:00 +01:00
Andreas Fackler d5f9c4d40d Fix Agreement and re-enable HoneyBadger test. 2018-05-17 17:38:45 +02:00
Andreas Fackler 50d007b954 Remove protoc dep, use new MerkleTree methods. 2018-05-17 16:50:47 +02:00
Vladimir Komendantskiy 01e89a7c48
Merge pull request #31 from poanetwork/afck-benchmark
Add a network simulation example.
2018-05-17 12:50:06 +01:00
Andreas Fackler 500ec81b2f Add a network simulation example. 2018-05-17 12:52:07 +02:00
Andreas Fackler 31ec37630f
Merge pull request #30 from poanetwork/vk-dist-algo-agreement
The BA module now defines a DistAlgorithm instance
2018-05-17 12:51:47 +02:00
Vladimir Komendantskiy a0627b2550 review comments taken 2018-05-17 11:36:09 +01:00
Vladimir Komendantskiy ca49f4041b fixed the outdated code in Agreement test 2018-05-17 11:27:31 +01:00
Vladimir Komendantskiy c8c8e1bb1f added a latch for the decided value in Agreement to remember the output value 2018-05-17 10:43:56 +01:00
Vladimir Komendantskiy 0c386276b1 defined a DistAlgorithm instance of Agreement 2018-05-16 22:50:23 +01:00
Vladimir Komendantskiy 4b0eebf299
Merge pull request #28 from poanetwork/afck-testnet
Generalize TestNetwork and test HoneyBadger.
2018-05-16 15:57:19 +01:00
Andreas Fackler 4164af1702 Generalize TestNetwork and test HoneyBadger. 2018-05-16 16:21:30 +02:00
Andreas Fackler f390b4d141
Merge pull request #26 from poanetwork/vk-common-subset-test
Common Subset test and fixes
2018-05-16 12:48:33 +02:00
Vladimir Komendantskiy 21b898d8e0 dispatch targeted messages in the Common Subset message handling routine 2018-05-16 11:21:53 +01:00
Vladimir Komendantskiy 5f916c4d08 formatting and lint check 2018-05-15 22:25:41 +01:00
Vladimir Komendantskiy c8034da332 corrected the CommonSubset module and test to decide on a map of values insetead of a set 2018-05-15 18:18:05 +01:00
Vladimir Komendantskiy ff3e819a4f a better check for when bin_values becomes non-empty 2018-05-15 16:00:37 +01:00
Vladimir Komendantskiy 322373a5ae started using the set of sent agreement values 2018-05-15 15:47:54 +01:00
Vladimir Komendantskiy eadd233fe4 added the Common Subset test module 2018-05-15 15:44:47 +01:00
Vladimir Komendantskiy 2dfbc2c58d
Merge pull request #21 from poanetwork/afck-algo-trait
Define a common DistAlgorithm trait.
2018-05-15 15:43:19 +01:00
Andreas Fackler 66898aee30 In agreement, set sent_bval correctly. 2018-05-15 16:15:41 +02:00
Andreas Fackler b8c534da2b Rename has_output to decided, add output iterator. 2018-05-15 16:05:55 +02:00
Andreas Fackler 3895949cf6 Fix broadcast for size < 4, and test more network sizes. 2018-05-15 15:53:37 +02:00
Andreas Fackler 10d9aa73e3 Rename UnexpectedMessage error. 2018-05-15 15:48:43 +02:00
Andreas Fackler 5528fc2de8 Define a common DistAlgorithm trait.
This will allow us to deduplicate network simulations in tests for the
different algorithms. More generally, it facilitates writing general
tools and applying them to all distributed algorithms.
2018-05-15 15:48:43 +02:00
Vladimir Komendantskiy 93a6ce1bb4
Merge pull request #22 from poanetwork/afck-protobuf
Make protobuf support optional, add serde support.
2018-05-15 12:27:58 +01:00
Andreas Fackler b543b771a7 Rename util to fmt. 2018-05-15 08:31:13 +02:00
Andreas Fackler e2c66e9a0a Add optional serde support.
If the feature "serialization-serde" is specified, protocol messages
implement serde's `Serialize` and `Deserialize` traits.

Close #18
2018-05-14 18:32:59 +02:00