1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
//! # RingKernel Accounting Network Analytics
//!
//! GPU-accelerated accounting network analysis with real-time visualization.
//!
//! This crate transforms traditional double-entry bookkeeping into a graph
//! representation, enabling advanced analytics like:
//!
//! - **Fraud Pattern Detection**: Circular flows, threshold clustering, Benford violations
//! - **GAAP Compliance**: Automated violation detection for accounting rules
//! - **Behavioral Anomalies**: Time-series based anomaly detection
//! - **Network Metrics**: Centrality, PageRank, community detection
//!
//! ## Architecture
//!
//! ```text
//! ┌─────────────────┐ ┌──────────────────┐ ┌────────────────┐
//! │ Data Fabric │────▶│ GPU Kernels │────▶│ Visualization │
//! │ (Synthetic Gen) │ │ (CUDA/WGSL) │ │ (egui Canvas) │
//! └─────────────────┘ └──────────────────┘ └────────────────┘
//! │ │ │
//! ▼ ▼ ▼
//! ┌─────────────────┐ ┌──────────────────┐ ┌────────────────┐
//! │ Journal Entries │ │ Network Analysis │ │ Graph Layout │
//! │ Transaction Gen │ │ Fraud Detection │ │ Flow Animation │
//! │ Anomaly Inject │ │ Temporal Analysis│ │ Analytics UI │
//! └─────────────────┘ └──────────────────┘ └────────────────┘
//! ```
//!
//! ## Quick Start
//!
//! ```rust,ignore
//! use ringkernel_accnet::prelude::*;
//!
//! // Create a network
//! let mut network = AccountingNetwork::new(entity_id, 2024, 1);
//!
//! // Add accounts
//! let cash = network.add_account(
//! AccountNode::new(Uuid::new_v4(), AccountType::Asset, 0),
//! AccountMetadata::new("1100", "Cash")
//! );
//!
//! // Add flows
//! network.add_flow(TransactionFlow::new(
//! source, target, amount, journal_id, timestamp
//! ));
//!
//! // Run analysis
//! network.calculate_pagerank(0.85, 20);
//! ```
//!
//! ## GPU Kernel Types
//!
//! 1. **Journal Transformation** - Methods A-E for converting entries to flows
//! 2. **Network Analysis** - Suspense detection, GAAP violations, fraud patterns
//! 3. **Temporal Analysis** - Seasonality, trends, behavioral anomalies
/// Prelude for convenient imports.
/// Version information.
pub const VERSION: &str = env!;
/// Crate name.
pub const NAME: &str = env!;