Update fork
This commit is contained in:
		
				commit
				
					
						9707e9c6cf
					
				
			
		
					 12 changed files with 1006 additions and 74 deletions
				
			
		
							
								
								
									
										15
									
								
								Cargo.toml
									
										
									
									
									
								
							
							
						
						
									
										15
									
								
								Cargo.toml
									
										
									
									
									
								
							| 
						 | 
					@ -1,14 +1,14 @@
 | 
				
			||||||
[package]
 | 
					[package]
 | 
				
			||||||
name = "glyphon"
 | 
					name = "glyphon"
 | 
				
			||||||
description = "Fast, simple 2D text rendering for wgpu"
 | 
					description = "Fast, simple 2D text rendering for wgpu"
 | 
				
			||||||
version = "0.6.0"
 | 
					version = "0.8.0"
 | 
				
			||||||
edition = "2021"
 | 
					edition = "2021"
 | 
				
			||||||
homepage = "https://github.com/grovesNL/glyphon.git"
 | 
					homepage = "https://github.com/grovesNL/glyphon.git"
 | 
				
			||||||
repository = "https://github.com/grovesNL/glyphon"
 | 
					repository = "https://github.com/grovesNL/glyphon"
 | 
				
			||||||
license = "MIT OR Apache-2.0 OR Zlib"
 | 
					license = "MIT OR Apache-2.0 OR Zlib"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[dependencies]
 | 
					[dependencies]
 | 
				
			||||||
wgpu = { version = "22", default-features = false, features = ["wgsl"] }
 | 
					wgpu = { version = "24", default-features = false, features = ["wgsl"] }
 | 
				
			||||||
etagere = "0.2.10"
 | 
					etagere = "0.2.10"
 | 
				
			||||||
cosmic-text = "0.12"
 | 
					cosmic-text = "0.12"
 | 
				
			||||||
lru = { version = "0.12.1", default-features = false }
 | 
					lru = { version = "0.12.1", default-features = false }
 | 
				
			||||||
| 
						 | 
					@ -16,6 +16,11 @@ rustc-hash = "2.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[dev-dependencies]
 | 
					[dev-dependencies]
 | 
				
			||||||
winit = "0.30.3"
 | 
					winit = "0.30.3"
 | 
				
			||||||
wgpu = "22"
 | 
					wgpu = "24"
 | 
				
			||||||
resvg = { version = "0.42", default-features = false }
 | 
					resvg = { version = "0.44", default-features = false }
 | 
				
			||||||
pollster = "0.3.0"
 | 
					pollster = "0.4.0"
 | 
				
			||||||
 | 
					criterion = { version = "0.5", features = ["html_reports"] }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[bench]]
 | 
				
			||||||
 | 
					name = "prepare"
 | 
				
			||||||
 | 
					harness = false
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										121
									
								
								benches/prepare.rs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										121
									
								
								benches/prepare.rs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,121 @@
 | 
				
			||||||
 | 
					use cosmic_text::{Attrs, Buffer, Color, Family, FontSystem, Metrics, Shaping, SwashCache};
 | 
				
			||||||
 | 
					use criterion::{criterion_group, criterion_main, Criterion};
 | 
				
			||||||
 | 
					use glyphon::{
 | 
				
			||||||
 | 
					    Cache, ColorMode, Resolution, TextArea, TextAtlas, TextBounds, TextRenderer, Viewport, Weight,
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					use wgpu::{MultisampleState, TextureFormat};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mod state;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fn run_bench(ctx: &mut Criterion) {
 | 
				
			||||||
 | 
					    let mut group = ctx.benchmark_group("Prepare");
 | 
				
			||||||
 | 
					    group.noise_threshold(0.02);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    let state = state::State::new();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Set up text renderer
 | 
				
			||||||
 | 
					    let mut font_system = FontSystem::new();
 | 
				
			||||||
 | 
					    let mut swash_cache = SwashCache::new();
 | 
				
			||||||
 | 
					    let cache = Cache::new(&state.device);
 | 
				
			||||||
 | 
					    let mut viewport = Viewport::new(&state.device, &cache);
 | 
				
			||||||
 | 
					    let mut atlas = TextAtlas::with_color_mode(
 | 
				
			||||||
 | 
					        &state.device,
 | 
				
			||||||
 | 
					        &state.queue,
 | 
				
			||||||
 | 
					        &cache,
 | 
				
			||||||
 | 
					        TextureFormat::Bgra8Unorm,
 | 
				
			||||||
 | 
					        ColorMode::Web,
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					    let mut text_renderer =
 | 
				
			||||||
 | 
					        TextRenderer::new(&mut atlas, &state.device, MultisampleState::default(), None);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    let attrs = Attrs::new()
 | 
				
			||||||
 | 
					        .family(Family::SansSerif)
 | 
				
			||||||
 | 
					        .weight(Weight::NORMAL);
 | 
				
			||||||
 | 
					    let shaping = Shaping::Advanced;
 | 
				
			||||||
 | 
					    viewport.update(
 | 
				
			||||||
 | 
					        &state.queue,
 | 
				
			||||||
 | 
					        Resolution {
 | 
				
			||||||
 | 
					            width: 1000,
 | 
				
			||||||
 | 
					            height: 1000,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (test_name, text_areas) in &[
 | 
				
			||||||
 | 
					        (
 | 
				
			||||||
 | 
					            "Latin - Single Text Area",
 | 
				
			||||||
 | 
					            vec![include_str!("../samples/latin.txt")],
 | 
				
			||||||
 | 
					        ),
 | 
				
			||||||
 | 
					        (
 | 
				
			||||||
 | 
					            "Arabic - Single Text Area",
 | 
				
			||||||
 | 
					            vec![include_str!("../samples/arabic.txt")],
 | 
				
			||||||
 | 
					        ),
 | 
				
			||||||
 | 
					        (
 | 
				
			||||||
 | 
					            "Latin - Many Text Areas",
 | 
				
			||||||
 | 
					            include_str!("../samples/latin.txt")
 | 
				
			||||||
 | 
					                .repeat(100)
 | 
				
			||||||
 | 
					                .split('\n')
 | 
				
			||||||
 | 
					                .collect(),
 | 
				
			||||||
 | 
					        ),
 | 
				
			||||||
 | 
					        (
 | 
				
			||||||
 | 
					            "Arabic - Many Text Areas",
 | 
				
			||||||
 | 
					            include_str!("../samples/arabic.txt")
 | 
				
			||||||
 | 
					                .repeat(20)
 | 
				
			||||||
 | 
					                .split('\n')
 | 
				
			||||||
 | 
					                .collect(),
 | 
				
			||||||
 | 
					        ),
 | 
				
			||||||
 | 
					    ] {
 | 
				
			||||||
 | 
					        let buffers: Vec<glyphon::Buffer> = text_areas
 | 
				
			||||||
 | 
					            .iter()
 | 
				
			||||||
 | 
					            .copied()
 | 
				
			||||||
 | 
					            .map(|s| {
 | 
				
			||||||
 | 
					                let mut text_buffer = Buffer::new(&mut font_system, Metrics::relative(1.0, 10.0));
 | 
				
			||||||
 | 
					                text_buffer.set_size(&mut font_system, Some(20.0), None);
 | 
				
			||||||
 | 
					                text_buffer.set_text(&mut font_system, s, attrs, shaping);
 | 
				
			||||||
 | 
					                text_buffer.shape_until_scroll(&mut font_system, false);
 | 
				
			||||||
 | 
					                text_buffer
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .collect();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        group.bench_function(*test_name, |b| {
 | 
				
			||||||
 | 
					            b.iter(|| {
 | 
				
			||||||
 | 
					                let text_areas: Vec<TextArea> = buffers
 | 
				
			||||||
 | 
					                    .iter()
 | 
				
			||||||
 | 
					                    .map(|b| TextArea {
 | 
				
			||||||
 | 
					                        buffer: b,
 | 
				
			||||||
 | 
					                        left: 0.0,
 | 
				
			||||||
 | 
					                        top: 0.0,
 | 
				
			||||||
 | 
					                        scale: 1.0,
 | 
				
			||||||
 | 
					                        bounds: TextBounds {
 | 
				
			||||||
 | 
					                            left: 0,
 | 
				
			||||||
 | 
					                            top: 0,
 | 
				
			||||||
 | 
					                            right: 0,
 | 
				
			||||||
 | 
					                            bottom: 1000,
 | 
				
			||||||
 | 
					                        },
 | 
				
			||||||
 | 
					                        default_color: Color::rgb(0, 0, 0),
 | 
				
			||||||
 | 
					                        custom_glyphs: &[],
 | 
				
			||||||
 | 
					                    })
 | 
				
			||||||
 | 
					                    .collect();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                criterion::black_box(
 | 
				
			||||||
 | 
					                    text_renderer
 | 
				
			||||||
 | 
					                        .prepare(
 | 
				
			||||||
 | 
					                            &state.device,
 | 
				
			||||||
 | 
					                            &state.queue,
 | 
				
			||||||
 | 
					                            &mut font_system,
 | 
				
			||||||
 | 
					                            &mut atlas,
 | 
				
			||||||
 | 
					                            &viewport,
 | 
				
			||||||
 | 
					                            text_areas,
 | 
				
			||||||
 | 
					                            &mut swash_cache,
 | 
				
			||||||
 | 
					                        )
 | 
				
			||||||
 | 
					                        .unwrap(),
 | 
				
			||||||
 | 
					                );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                atlas.trim();
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    group.finish();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					criterion_group!(benches, run_bench);
 | 
				
			||||||
 | 
					criterion_main!(benches);
 | 
				
			||||||
							
								
								
									
										43
									
								
								benches/state.rs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								benches/state.rs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					use wgpu::{BackendOptions, Dx12BackendOptions};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use pollster::block_on;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub struct State {
 | 
				
			||||||
 | 
					    pub device: wgpu::Device,
 | 
				
			||||||
 | 
					    pub queue: wgpu::Queue,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl State {
 | 
				
			||||||
 | 
					    pub fn new() -> Self {
 | 
				
			||||||
 | 
					        let instance = wgpu::Instance::new(&wgpu::InstanceDescriptor {
 | 
				
			||||||
 | 
					            backends: wgpu::Backends::all(),
 | 
				
			||||||
 | 
					            flags: wgpu::InstanceFlags::empty(),
 | 
				
			||||||
 | 
					            backend_options: BackendOptions {
 | 
				
			||||||
 | 
					                gl: wgpu::GlBackendOptions {
 | 
				
			||||||
 | 
					                    gles_minor_version: wgpu::Gles3MinorVersion::Automatic
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                dx12: Dx12BackendOptions {
 | 
				
			||||||
 | 
					                    shader_compiler: wgpu::Dx12Compiler::Fxc
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let adapter = block_on(wgpu::util::initialize_adapter_from_env_or_default(
 | 
				
			||||||
 | 
					            &instance, None,
 | 
				
			||||||
 | 
					        ))
 | 
				
			||||||
 | 
					        .unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let (device, queue) = block_on(adapter.request_device(
 | 
				
			||||||
 | 
					            &wgpu::DeviceDescriptor {
 | 
				
			||||||
 | 
					                label: Some("Benchmark Device"),
 | 
				
			||||||
 | 
					                required_features: adapter.features(),
 | 
				
			||||||
 | 
					                required_limits: adapter.limits(),
 | 
				
			||||||
 | 
					                memory_hints: wgpu::MemoryHints::Performance,
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            None,
 | 
				
			||||||
 | 
					        ))
 | 
				
			||||||
 | 
					        .unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Self { device, queue }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -47,7 +47,7 @@ impl WindowState {
 | 
				
			||||||
        let scale_factor = window.scale_factor();
 | 
					        let scale_factor = window.scale_factor();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // Set up surface
 | 
					        // Set up surface
 | 
				
			||||||
        let instance = Instance::new(InstanceDescriptor::default());
 | 
					        let instance = Instance::new(&InstanceDescriptor::default());
 | 
				
			||||||
        let adapter = instance
 | 
					        let adapter = instance
 | 
				
			||||||
            .request_adapter(&RequestAdapterOptions::default())
 | 
					            .request_adapter(&RequestAdapterOptions::default())
 | 
				
			||||||
            .await
 | 
					            .await
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,7 +43,7 @@ impl WindowState {
 | 
				
			||||||
        let scale_factor = window.scale_factor();
 | 
					        let scale_factor = window.scale_factor();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // Set up surface
 | 
					        // Set up surface
 | 
				
			||||||
        let instance = Instance::new(InstanceDescriptor::default());
 | 
					        let instance = Instance::new(&InstanceDescriptor::default());
 | 
				
			||||||
        let adapter = instance
 | 
					        let adapter = instance
 | 
				
			||||||
            .request_adapter(&RequestAdapterOptions::default())
 | 
					            .request_adapter(&RequestAdapterOptions::default())
 | 
				
			||||||
            .await
 | 
					            .await
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -62,7 +62,7 @@ impl WindowState {
 | 
				
			||||||
        let scale_factor = window.scale_factor() as f32;
 | 
					        let scale_factor = window.scale_factor() as f32;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // Set up surface
 | 
					        // Set up surface
 | 
				
			||||||
        let instance = Instance::new(InstanceDescriptor::default());
 | 
					        let instance = Instance::new(&InstanceDescriptor::default());
 | 
				
			||||||
        let adapter = instance
 | 
					        let adapter = instance
 | 
				
			||||||
            .request_adapter(&RequestAdapterOptions::default())
 | 
					            .request_adapter(&RequestAdapterOptions::default())
 | 
				
			||||||
            .await
 | 
					            .await
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										8
									
								
								samples/README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								samples/README.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					# Sample Attribution
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The sample sources with accompanying attributions and licenses are as follows:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					| Sample         | Title                       | Amendments | Source                                                                                                                                                               | License                                                                                            |
 | 
				
			||||||
 | 
					| -------------- | --------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
 | 
				
			||||||
 | 
					| `./arabic.txt` | Al-Kindi - First Philosophy | None       | [Wiki Source](<https://en.wikisource.org/wiki/Moby-Dick_(1851)_US_edition/Chapter_1>)                                                                                | [Creative Commons Attribution-ShareAlike License](https://creativecommons.org/licenses/by-sa/4.0/) |
 | 
				
			||||||
 | 
					| `./latin.txt`  | Moby Dick - First Chapter   | None       | [Wiki Source](https://ar.wikisource.org/wiki/%D8%A7%D9%84%D9%83%D9%86%D8%AF%D9%8A_-_%D8%A7%D9%84%D9%81%D9%84%D8%B3%D9%81%D8%A9_%D8%A7%D9%84%D8%A3%D9%88%D9%84%D9%89) | [Creative Commons Attribution-ShareAlike License](https://creativecommons.org/licenses/by-sa/4.0/) |
 | 
				
			||||||
							
								
								
									
										637
									
								
								samples/arabic.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										637
									
								
								samples/arabic.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,637 @@
 | 
				
			||||||
 | 
					الكافرين نعمته، والعائدين عن سبيل الحق المرتضاة عنده. ولنكمل الآن هذا الفن بتأييد ولي الخيرات، وقابل الحسنات.
 | 
				
			||||||
 | 
					من نصرة الحق وتأييد الصدق، ويبلغنا بذلك درجة من ارتضى نيته وقبل فعله، ووهب له الفلج والظفر على أضداده 
 | 
				
			||||||
 | 
					جنته الواقية، ويهب لنا نصرة غروب أسلحته النافذة والتأييد بعز قوته العالية حتى يبلغنا بذلك نهاية نيتنا 
 | 
				
			||||||
 | 
					فضائحهم، والمخبرة عن عورات نحلهم المردية، وأن يحوطنا ومن سلك سبيلنا بحصن عزه الذي لا يرام، وأن يلبسنا سرابيل 
 | 
				
			||||||
 | 
					ربوبيته، وإيضاح وحدانيته، وذب المعادين له، والكافرين به عن ذلك بالحجج القامعة لكفرهم، والهاتكة لسجوف 
 | 
				
			||||||
 | 
					بألسنتهم، والتمسك بها اضطرار عليهم. فنحن نسأل المطلع على سرائرنا، والعالم اجتهادنا، في تثبيت الحجة على 
 | 
				
			||||||
 | 
					وأن يعطوا على ذلك برهاناً، وإعطاء العلة والبرهان من قنية علم الأشياء بحقائقها. فواجب إذن طلب هذه القنية 
 | 
				
			||||||
 | 
					إقتناءها يجب أو لا يجب، فإن قالوا إنه يجب وجب طلبها عليهم، وإن قالوا إنها لا تجب وجب عليهم أن يحصروا علة ذلك، 
 | 
				
			||||||
 | 
					ونحن قائلون الآن. وذلك باضطرار يجب على ألسنة المضادين لها اقتناؤها، وذلك أنهم لا يخلون من أن يقولوا إن 
 | 
				
			||||||
 | 
					وإيثارها. فواجب إذن التمسك بهذه القنية النفيسة عند ذوي الحق، وأن نسعى في طلبها بغاية جهدنا لما قدمنا: 
 | 
				
			||||||
 | 
					إنما أتت بالإقرار بربوبية الله وحده وبلزوم الفضائل المرتضاة عنده؛ وترك الرذائل المضادة للفضائل في ذواتها 
 | 
				
			||||||
 | 
					منه. واقتناء هذه جميعاً هو الذي أتت به الرسل الصادقة عن الله جل ثناؤه، فإن الرسل الصادقة صلوات الله عليها 
 | 
				
			||||||
 | 
					بحقائقها الربوبية، وعلم الوحدانية، وعلم الفضيلة، وجملة علم كل نافع والسبيل إليه، والبعد عن كل ضار والاحتراس 
 | 
				
			||||||
 | 
					بالدين لم يكن له، ويحق أن يتعرى من الدين من عاند قنية علم الأشياء بحقائقها وسماها كفراً. لأنفي علم الأشياء 
 | 
				
			||||||
 | 
					استحقاق بل للترؤس والتجارة بالدين وهم عدماء الدين، لأن من تجر بشيء باعه، ومن باع شيئاً لم يكن له، فمن تجر 
 | 
				
			||||||
 | 
					وكانوا منها في الأطراف الشاسعة - لموضع الأعداء الحربية الواترة، ذبا عن كراسيهم المزورة التي نصبوها عن غير 
 | 
				
			||||||
 | 
					البهيمية والحاجب بسدف سجوفه أبصار فكرهم عن نور الحق ووضعهم ذوي الفضائل الإنسانية - التي قصروا عن نيلها 
 | 
				
			||||||
 | 
					يستحق ذو الجلالة في الرأي والاجتهاد في الأنفاع العامة الكل، الشاملة لهم، ولدرانة الحسد المتمكن من أنفسهم 
 | 
				
			||||||
 | 
					أهل الغربة عن الحق، وإن تتوجوا بتيجان الحق من غير استحقاق: لضيق فطنتهم عن أساليب الحق، وقلة معرفتهم بما 
 | 
				
			||||||
 | 
					الانحصار إن الاتساع في القول المحلل لعقد العويص الملتبسة، توقياً سوء تأويل كثير من المتسمين بالنظر في دهرنا من 
 | 
				
			||||||
 | 
					لم يقولوا فيه قولاً تاماً على مجرى عادة اللسان وسنة الزمان، وبقدر طاقتنا، مع العلة العارضة لنا في ذلك من 
 | 
				
			||||||
 | 
					موضوعاتنا من إحضار ما قال القدماء في ذلك قولاً تاماً على أقصد سبله وأسهلها سلوكاً على أبناء هذه السبيل، وتتميم ما 
 | 
				
			||||||
 | 
					الحق. يحسن بنا، إذا كنا حراصاً على تتميم نوعنا - إذ الحق في ذلك - أن نلزم في كتابنا هذا عاداتنا في جميع 
 | 
				
			||||||
 | 
					شيء أولى بطالب الحق من الحق. وليس يبخس الحق، ولا يصغر بقائله ولا بالآتي به. ولا أحد بخس الحق؛ بل كان يشرفه 
 | 
				
			||||||
 | 
					نستحي من استحسان الحق، واقتناء الحق من أين أتى، وإن أتى من الأجناس القاصية عنا، والأمم المباينة، فإنه لا 
 | 
				
			||||||
 | 
					كانوا سبب كونهم، فضلاً عن أنهم سبب لهم. وإذ هم سبب لنا إلى نيل الحق فما أحسن ما قال في ذلك. وينبغي لنا أن لا 
 | 
				
			||||||
 | 
					الكثيرة. فأما أرسطو طاليس مبرز اليونانيين في الفلسفة فقال: ينبغي أن نشكر آباء الذين أتوا بشيء من الحق، إذ 
 | 
				
			||||||
 | 
					نظره، وآثر الدأب ما اجتمع بمثل ذلك من شدة البحث وإلطاف النظر وإيثار الدأب في إضعاف ذلك من الزمان الأضعاف 
 | 
				
			||||||
 | 
					ولزوم الدأب، وإيثار التعب في ذلك. وغير ممكن أن يجتمع في من المرء الواحد وإن اتسعت مدته واشتد بحثه، ولطف 
 | 
				
			||||||
 | 
					مطلوباتنا الحقية. فإن ذلك إنما اجتمع في الأمصار السالفة المتقادمة عصراً بعد عصر إلى زماننا هذا، مع شدة البحث 
 | 
				
			||||||
 | 
					لو لم يكونوا لم يجتمع لنا من شدة البحث في مددنا كلها هذه الأوائل الحقية، التي بها خرجنا إلى الأواخر من 
 | 
				
			||||||
 | 
					أشركونا في ثمار فكرهم، وسهلوا لنا الخفية الحقية، بما أفادونا من المقدمات المسهلة لنا سبل الحق. فإنهم 
 | 
				
			||||||
 | 
					منهم اجتمع من ذلك شيء له قدر جليل. فينبغي أن يعظم شكرنا للآتين بيسير الحق فضلاً عمن أتى بكثير من الحق: إذ 
 | 
				
			||||||
 | 
					وإما نال منه شيئاً يسيراً بالإضافة إلى ما يستأهل الحق. فإذا جمع يسير ما نال كل واحد من النائلين من الحق 
 | 
				
			||||||
 | 
					الحق، بما يستأهل الحق، حد من الناس بجهد طلبه، ولا أحاط به جميعهم، بل كل واحد منهم إما لم ينل منه شيئاً، 
 | 
				
			||||||
 | 
					من نيل حقيقته. وسيما إذ هو بين عندنا، وعند المبرزين من المتفلسفين قبلنا من غير أهل لساننا، إنه لم ينل 
 | 
				
			||||||
 | 
					كانوا لنا أنساباً وشركاء فبما أفادونا من ثمار فكرهم، التي صارت لنا سبلاً وآلات مؤدية إلى علم كثير مما قصروا 
 | 
				
			||||||
 | 
					الصار الهزلية، فكيف بالذين هم أكثر أسباب منافعنا العظام الحقيقية الجدية. فإنهم وإن قصروا عن بعض الحق، فقد 
 | 
				
			||||||
 | 
					جهة الشيء الأتقن علميه، وأول بالزمان إذ هي علة الزمان. ومن أوجب الحق ألا نذم أحد من كان أحد أسباب منافعنا 
 | 
				
			||||||
 | 
					الأولى الفلسفة الأولى، إذ جميع باقي الفلسفة منطو في علمها. وإذن هي أول بالشرف وأول بالجنس، وأول بالترتيب من 
 | 
				
			||||||
 | 
					عنصرها، وصورتها، وعلتها التمامية، فقد أحطنا بعلم حدها. وكل محدود فحقيقته في حده. فبحق ما سمي علم العلة 
 | 
				
			||||||
 | 
					أحطنا بعلم جنسها، ومتى أحطنا بعلم صورتها فقد أحطنا بعلم نوعها، وفي علم النوع علم الفصل، فإذا أحطنا بعلم 
 | 
				
			||||||
 | 
					تبحثان عن نوعها، ولم عن علتها التمامية إذ هي باحثة عن العلة المطلقة. وبين أنا متى أحطنا بعلم من عنصرها فقد 
 | 
				
			||||||
 | 
					فأما هل فإنها باحثة عن الأنية فقط؛ وإن كل أنية لها جنس، فإن ما تبحث عن جنسها، وأي تبحث عن فصلها، وما وأي 
 | 
				
			||||||
 | 
					والمطالب العلمية أربعة كما حددنا في غير موضع من أقاويلنا الفلسفية: إما هل، وإما ما، وإما أي، وإما لم، 
 | 
				
			||||||
 | 
					أن تكون عنصراً، وإما صورة وإما فاعلة: أعني ما منه مبدأ الحركة، وإما متممة: أعني ما من أجله كان الشيء. 
 | 
				
			||||||
 | 
					أشرف من علم المعلول، لأنا إنما نعلم كل واحد من المعلومات علماً تاماً إذا أحطنا بعلم علته. لأن كل علة إما 
 | 
				
			||||||
 | 
					الذي هو علة كل حق. ولذلك يجب أن يكون الفيلسوف التام الأشرف هو المرء المحيط بهذا العلم الأشرف: لأن علم العلة 
 | 
				
			||||||
 | 
					حقيقة، فالحق اضطراراً موجود إذن الأنيات موجودة. وأشرف الفلسفة وأعلاها مرتبة الفلسفة الأولى: أعني علم الحق الأول 
 | 
				
			||||||
 | 
					انتهينا إلى الحق. ولسنا نجد مطلوباتنا من الحق من غير علة، وعلة وجود كل شيء وثباته الحق: لأن كل ما له أنية له 
 | 
				
			||||||
 | 
					الإنسان؛ لأن غرض الفيلسوف في علمه إصابة الحق، وفي عمله العمل بالحق، لا الفعل سرمداً، لأنا نمسك وينصرم الفعل إذا 
 | 
				
			||||||
 | 
					إن أعلى الصناعات الإنسانية منزلة، وأشرفها مرتبة صناعة الفلسفة التي حدها: علم الأشياء بحقائقها بقدر طاقة 
 | 
				
			||||||
 | 
					الذين من استمسك بهديهم سعد في دار الدنيا، ودار الأبد، وزينك بجميع ملابس الفضيلة وطهرك من جميع طبع الرذيلة. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					كتاب الكندي إلى المعتصم بالله في الفلسفة الأولى أطال الله بقاءك يا ابن ذرى السادات، وعرى السعادات، 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					الفن الثاني
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					مقصوداتنا. فإذا تقدمت هذه الوصايا فينبغي أن نقدم القوانين التي نحتاج إلى استعمالها في هذه الصناعة، فنقول:
 | 
				
			||||||
 | 
					تحفظنا هذه الشرائط سهلت علينا المطالب المقصودة؛ وإن خالفنا ذلك أخطأنا أغراضنا من مطالبنا، وعسر علينا وجدان 
 | 
				
			||||||
 | 
					تمثيلاً، ولا في أوائل العلم الطبيعي الجوامع الفكرية، ولا في البلاغة برهاناً، ولا في أوائل البرهان برهاناً، فإنا 
 | 
				
			||||||
 | 
					سبل الحق. فينبغي أن نقصد لكل مطلوب ما يجب، ولا نطلب في العلم الرياضي إقناعاً، ولا في العلم الإلهي حساً ولا 
 | 
				
			||||||
 | 
					المطلوبات، وبعضهم أراد استعمال ذلك في وجود مطلوبه، أما للتقصير عن علم أساليب المطلوبات، وإما لعشق التكثير من 
 | 
				
			||||||
 | 
					جرى على عادة شهادات الأخبار، وبعضهم جرى على عادة الحس، وبعضهم جرى على عادة البرهان لما قصروا عن تمييز 
 | 
				
			||||||
 | 
					الناظرين في الأشياء التمييزية، لأن منهم من جرى على طلب عادة الإقناع، وبعضهم جرى على عادة الأمثال، وبعضهم 
 | 
				
			||||||
 | 
					الرياضي كانت إحاطتنا به ظنية لا علمية. وكذلك لكل نظري تمييزي وجود خاص غير وجود الآخر. ولذلك مثل أيضاً كثير من 
 | 
				
			||||||
 | 
					الإنسان إذاً. وكذلك ينبغي ألا نطلب الإقناعات في العلوم الرياضية بل البرهان فإنا إن إستعملنا الاقناع في العلم 
 | 
				
			||||||
 | 
					إن رمنا علم ما الإنسان الذي هو الحي الناطق الميت، ولم نعلم ما الحي وما الناطق وما الميت، فليس نعلم ما 
 | 
				
			||||||
 | 
					لكل برهان برهان، فلا يكون لشيء وجود بتة، لأن ما لا ينتهي إلى علم أوائله فليس بمعلوم، فلا يكون علماً بتة. لأنا 
 | 
				
			||||||
 | 
					بالبرهان، لأنه ليس كل شيء برهان، إذ البرهان بعض الأشياء، وليس للبرهان برهان، لأن هذا يكون بلا نهاية. إن كان 
 | 
				
			||||||
 | 
					هو علم ما لا يتحرك. وقد ينبغي ألا نطلب في إدراك كل مطلوب الوجود البرهاني، فإنه ليس كل مطلوب عقلي موجوداً 
 | 
				
			||||||
 | 
					الحركة حركة، ولا علة المتحرك متحرك. فإذن ما فوق الطبيعيات ليس بمتحرك. فإذن قد وضح أن علم ما فوق الطبيعيات 
 | 
				
			||||||
 | 
					ما فوق الطبيعيات هو لا متحرك لأنه ليس يمكن أن يكون الشيء علة كون ذاته، كما سنبين بعد قليل. فإذن ليس علة 
 | 
				
			||||||
 | 
					في أوائل الطبيعة - هو علة كل حركة. إذن فالطبيعي هو كل متحرك، فإذن علم الطبيعيات هو علم كل متحرك. فإذن 
 | 
				
			||||||
 | 
					ما علة الواقع تحت ذلك العلم. فإنا إن بحثنا ما علة الطباع الذي هو علة الأشياء الطبيعية وجدناه - كما قلنا 
 | 
				
			||||||
 | 
					فمن استعملها في البحث عن الطبيعيات حاد وعدم الحق. فلذلك يحب على كل باحث علم من العلوم أن يبحث أولاً عن 
 | 
				
			||||||
 | 
					الأشياء الطبيعية الفحص الرياضي، إذ هي خاصة ما لا هيولى له. فإذا هي كذلك، فالفحص بها على ما ليس بطبيعي. 
 | 
				
			||||||
 | 
					فهي متحركة، والطبيعة علة أولية لكل متحرك ساكن، فإذن كل طبيعي فذو هيولى، فإذن لم يكن أن يستعمل في وجود 
 | 
				
			||||||
 | 
					الطبيعية إذا استعملوا الفحص التعليمي، لأن ذلك إنما ينبغي أن يكون فيما لاه يولى له، لأن الهيولى موضوعة الانفعال 
 | 
				
			||||||
 | 
					أو الرسائل، أو الشعر، أو القصص، إلى ما كان حديثاً، لعادتهم للحديث أو الخرافات من بدء النشوء. وفي الأشياء 
 | 
				
			||||||
 | 
					عاداتهم للحس. مثل الصبي فإن التعليم إنما يكون سهلاً في المعتادان؛ ومن الدليل على ذلك سرعة المتعلمين من الخطب، 
 | 
				
			||||||
 | 
					العلة تحير كثير من الناظرين في الأشياء التي فوق الطبيعة إذ استعملوا في البحث عنها تمثلها في النفس، على قدر 
 | 
				
			||||||
 | 
					بذلك مع وضوحه في العقل، أعشى عنه أتعشى عين الوطواط عن نيل الأشخاص البينة الواضحة لنا في شعاع الشمس. ولهذه 
 | 
				
			||||||
 | 
					وكدر الجيران. فإنها بهاتين المسألتين كان الحق من جهة سهلاً، ومن جهة عسيراً: لأن من طلب تمثل المعقول ليجده 
 | 
				
			||||||
 | 
					عن جميع الرذائل - هذه المقدمة، لتكون لك دليلاً قاصداً سواء الحقائق، وشهاباً حاسراً عن عين عقلك ظلمة الجهل 
 | 
				
			||||||
 | 
					بالهيولى، فلن يجد لها مثلاً في النفس، بل يجدها بالأبحاث العقلية. فاحفظ - حفظ الله عليك جميع الفضائل، وصانك 
 | 
				
			||||||
 | 
					في النفس، إنما هو وجود عقلي اضطراري، فمن يبحث الأشياء التي فوق الطبيعة أعني التي لا هيولى لها، ولا تقارن 
 | 
				
			||||||
 | 
					يكون. فإذن جسم الكلاء ملاء بعده، لأنه لا جسم بعهده، ولا خلاء بعده كما بينا. فهذا واجب اضطراراً، وليست له صورة 
 | 
				
			||||||
 | 
					ملاء ملاء، كان ملاء بلا نهاية، فوجب جسم بلا نهاية في الكمية، فوجب لا نهاية بالفعل، ولا نهاية بالفعل ممتنع أن 
 | 
				
			||||||
 | 
					الكمية. فليس بعد جسم الكل ملاء، لأنه إن كان بعده ملاء، كان ذلك الملاء جسماً، فإن كان ذلك الملاء بعده ملاء، وبعد كل 
 | 
				
			||||||
 | 
					وليس يمكن أن يكون شيء لا نهاية له بالفعل كما سنبين بعد قليل، فليس يمكن أن يكون جسم الكل لا نهاية له في 
 | 
				
			||||||
 | 
					نقول: والملاء إذا كان هو جسم، فإما أن يكون جسم الكل لا نهاية له في الكمية، وإما أن يكون متناهي الكمية؛ 
 | 
				
			||||||
 | 
					إذن يمكن أن يكون مكان بلا متمكن. ونعني بخلاء مكاناً بلا متمكن. فليس يمكن إذن أن يكون للخلاء المطلق وجود. ثم 
 | 
				
			||||||
 | 
					من المضاف الذي لا يسبق بعضه بعضاً، فإن كان مكان، كان متمكن اضطراراً وإن كان متمكن كان مكان اضطراراً، فليس 
 | 
				
			||||||
 | 
					بهذه المقدمات التي تقدم. وذلك أن نقول في البحث عن ذلك أن معنى الخلاء مكان لا متمكن فيه، والمكان والمتمكن 
 | 
				
			||||||
 | 
					شيء لم يدركه الحس، ولا بحق الحس، فيكون له في النفس مثال، أو يظن له مثال، وإنما هو شيء يجده العقل اضطراراً 
 | 
				
			||||||
 | 
					إن جسم الكل ليس خارج منه خلاء ولا ملاء، أعني لا فراغ ولا جسم. وهذا القول لا يتمثل في النفس: لأن لا خلاء ولا ملاء 
 | 
				
			||||||
 | 
					ولا تقارن الهيولى، فليس تمثل في النفس بتة، ولا يظن أنها تمثل، وإنما نقر بها لما يوجب ذلك اضطراراً كقولنا: 
 | 
				
			||||||
 | 
					وتوجد مع الهيولى، قد يظن أنها تمثل في النفس، وأن ما يعقل مع المحسوس لا يتمثل. فلذلك كل اللاتي لا هيولى لها، 
 | 
				
			||||||
 | 
					الملون بوجود النهاية التي هي الشكل - وجود عقلي عرض بالحس لا محسوس بالحقيقة. فلذلك كل اللاتي لا هيولى لها 
 | 
				
			||||||
 | 
					باجتلاب الحس الكلي له - ويمثله في نفس الإنسان لاحقة تلحق المثال اللوني كاللاحقة التي تلحق اللون، أنه نهاية 
 | 
				
			||||||
 | 
					نهاية اللون، فيعرض بالحس البصري أن يوجد الشكل إذ هو نهاية المدرك بالحس البصري. وقد نظن أنه يتمثل في النفس 
 | 
				
			||||||
 | 
					مثالي يمثله الحس الكلي في النفس. وكل ما هو لا هيولاني، وقد يوجد مع الهيولاني كالشكل الموجود باللون إذ هو 
 | 
				
			||||||
 | 
					لأنه لا مثال، لأنه لا لون، ولا صوت، ولا طعم، ولا رائحة، ولا ملموس، بل إدراك لا مثالي. وكل ما كان هيولانياً فإنه 
 | 
				
			||||||
 | 
					بعينه ليس يعرى. فإن هذا وجود للنفس لا حسي، اضطراري، لا يحتاج إلى متوسط، وليس يتمثل لهذا مثال في النفس، 
 | 
				
			||||||
 | 
					كلها محسوسة - بل مصدق في النفس، محقق متيقن بصدق الأوائل العقلية اضطراراً. بالهيولى هم غير صادقين في شيء 
 | 
				
			||||||
 | 
					النفس من المحسوسات فهو للقوة المستعملة الحواس. فما كل معن نوعي، وما فوق النوع فليس متمثل للنفس - لأن المثل 
 | 
				
			||||||
 | 
					تحت قوة من قوى النفس تامة أعني الإنسانية هي المسماة العقل الإنساني. وإذ الحواس واحدة الأشخاص، فكل متمثل في 
 | 
				
			||||||
 | 
					الجزئية الهيولانية واقعة تحت الحواس؛ وأما الأجناس والأنواع فغير واقعة تحت الحواس، ولا موجودة وجوداً حسياً، بل 
 | 
				
			||||||
 | 
					الأشياء كلية وجزئية: أعني بالكلي الأجناس للأنواع، والأنواع للأشخاص، وأعني بالجزئية الأشخاص للأنواع. والأشخاص 
 | 
				
			||||||
 | 
					والآخر أقرب من الطبيعة وأبعد عنا، وهو: وجود العقل. وبحق ما كان الوجود وجودان: وجود حسي، ووجود عقلي؛ إذ 
 | 
				
			||||||
 | 
					من الحاس جداً لوجدانه بالحس مع مباشرة الحس إياه. والمحسوس كله ذو هيولى أبداً، فالمحسوس أبداً جرم، وبالجرم 
 | 
				
			||||||
 | 
					فيؤديها للحفظ، فهو متمثل ومتصور في نفس الحي. فهو وإن كان لا مات له في الطبيعة فبعد عندها وخفي لذلك فهو قريب 
 | 
				
			||||||
 | 
					بالتشبيه وغير التشبيه، والأشد والأضعف. فهو الدهر في زوال دائم، وتبدل غير منفصل وهو الذي يثبت صوره في المصور 
 | 
				
			||||||
 | 
					كل حال بأحد أنواع الحركات، وتفاضل الكمية فيه بالأكثر والأقل، والتساوي وغير التساوي، وتغاير الكيفية فيه 
 | 
				
			||||||
 | 
					وجودنا بالحواس - عند مباشرة الحس محسوسة - بلا زمان ولا مؤونة وهو غير ثابت لزوال ما يباشر، وسيلانه، وتبدله في 
 | 
				
			||||||
 | 
					الحواس التي هي لنا منذ بدء نشوئنا، وللجنس العام لنا، والكثير من غيرنا، أعني: الحي العام لجميع الحيوان. فإن 
 | 
				
			||||||
 | 
					ذلك بما يتلوه تلواً طبيعياً فنقول: إن الوجود الإنساني وجودان أحدهما أقرب منا وأبعد عند الطبيعة، وهو وجود 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					وهو الجزء الأول في الفلسفة الأولى فإذا قدمنا ما يجب تقديمه في صدر كتابنا هذا، فلنتل 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					محدود، فكله محدود النهاية من آخره. فليس يمكن أن يكون الزمان الآتي لا نهاية له بالفعل. فلنكمل الآن الفن الثاني.
 | 
				
			||||||
 | 
					أن زيد ما زيد على الزمن المحدود زمان محدود أن تكون الجملة لا محدودة. وكلما زيد على الزمن المحدود زمان 
 | 
				
			||||||
 | 
					إنه يصير جملة الزمانين المحدودة، فهي لا محدودة النهايات وهي محدودة النهايات؛ وهذا خلف لا يمكن. فليس يمكن 
 | 
				
			||||||
 | 
					زمانان محدودان بنهاية واحدة مشتركة، لهما، فإن نهاية كل واحد منهما الباقية محدودة معلومة. وقد كان قيل 
 | 
				
			||||||
 | 
					الزمان الماضي الأخيرة، ونهاية الزمان الآتي الأول. ولكل زمان محدود نهايتان: نهاية أولى، ونهاية أخرى، فإن اتصل 
 | 
				
			||||||
 | 
					والزمان من الكمية المتصلة، أعني: أن له فصلاً مشتركاً للماضي منه والآني. وفصله المشترك هو الآن الذي هو نهاية 
 | 
				
			||||||
 | 
					عليه محدوداً. فإن لم تصر الجملة محدودة؛ فقد زيد شيء محدود الكمية، فاجتمع منها شيء لا نهاية له في الكمية، 
 | 
				
			||||||
 | 
					متتالية زمان بعد زمان؛ فإنه كلما زيد على الزمان المتناهي المحدود زمان، كانت جملة الزمان المحدود المزيد 
 | 
				
			||||||
 | 
					نهاية له بالفعل، لأنه إن كان الزمان الماضي إلى زمن محدود ممتنعاً أن يكون بلا نهاية له - كما قدمنا - والأزمنة 
 | 
				
			||||||
 | 
					الجرم ليست لا نهاية لها، فأنية الجرم متناهية. فممتنع أن يكون جرم لم يزل. وليس يمكن أن يكون آتى الزمان لا 
 | 
				
			||||||
 | 
					الزمان مقبلاً من لا نهاية بل من نهاية اضطراراً. فليست مدة الجرم بلا نهاية، وليس يمكن أن يكون جرم بلا مدة، فأنية 
 | 
				
			||||||
 | 
					فإنه لا يقطع ما لا نهاية له من الزمان حتى ينتهي إلى زمن محدود بتة، والانتهاء إلى زمن محدود موجود به. فليس 
 | 
				
			||||||
 | 
					إلى الذي قبله حتى ينتهي إلى زمن قبله، وكذلك بلا نهاية، وما لا نهاية له، لانقطع مسافته ولا يؤتى على آخرها. 
 | 
				
			||||||
 | 
					لا متناه متناهياً، وهذا خلف لا يمكن. وأيضاً إن كان لا ينتهي إلى الزمان المحدود حتى ينتهى إلى زمن قبله، ولا 
 | 
				
			||||||
 | 
					لا نهاية إلى الزمن محدود معلوم، فإن من ذلك الزمن المعلوم إلى ما لا نهاية له من الزمان معلوم. فيكون إذن 
 | 
				
			||||||
 | 
					الزمن المفروض يساوي المدة للمدة التي من هذا الزمن المفروض فصاعداً في الأزمنة إلى ما لانهاية له. وإن كان من 
 | 
				
			||||||
 | 
					فإن خلف كل فصل من الزمان فصلاً بلا نهاية. فإذن لا ينتهي إلى زمن مفروض أبداً: لأن من لا نهاية في القدم إلى هذا 
 | 
				
			||||||
 | 
					الزمان لا يكون فصل قبله، أعني: إلى مدة مفصولة ليست قبلها مدة مفصولة. ولا يمكن غير ذلك، فإن أمكن غير ذلك، 
 | 
				
			||||||
 | 
					زمان لا نهاية له بالفعل في ماضيه، ولا آتيه، فنقول: إن قبل كل فصل من الزمان فصلاً، إلى أن ينتهي إلى فصل من 
 | 
				
			||||||
 | 
					ما. وإن لم يكن التركيب والتأليف تبدلاً فليست هذه النتيجة بواجبة. ولنوضح الآن بنوع آخر أنه لا يمكن أن يكون 
 | 
				
			||||||
 | 
					الأنية. فإذا كان الزمان ذا نهاة بالفعل، فأنية الجرم ذات نهاية بالفعل اضطراراً، إن كان التركيب والتأليف تبدلاً 
 | 
				
			||||||
 | 
					أوضحنا، فالجرم لا تسبقه مدة بعدها الحركة. فالجرم والحركة والزمان لأسبق بعضها بعضاً في الأنية؛ فهي معاً في 
 | 
				
			||||||
 | 
					بعدها الحركة. ولكل جرم مدة، كما قدمنا، أي ما هو فيه أنيته، أعني ما هو فيه هويا. والجرم لأسبق الحركة، كما 
 | 
				
			||||||
 | 
					بعضاً. وبالحركة الزمان، لأن الحركة تبدل، والتبدل عدد مدة المتبدل فالحركة عادة. مدة التبدل. والزمان مدة 
 | 
				
			||||||
 | 
					فإن لم تكن الحركة لم يكن التركيب. والجرم مركب، فإن لم يكن حركة لم يكن جرم، فالجرم والحركة لم يسبق بعضها 
 | 
				
			||||||
 | 
					العريض العميق الذي فصله. وهو المركب من هيولى وصورة. والتركيب يبدل الحالة التي هي لا تركيب والتركيب حركة، 
 | 
				
			||||||
 | 
					أشياء ونظمها. والجرم جوهر طويل عريض عميق، أي ذو أبعاد ثلاثة؛ فهو مركب من الجوهر الذي هو جنسه، ومن الطويل 
 | 
				
			||||||
 | 
					بما قلنا - يزيد الناظرين في هذه السبيل تمهراً بتولجها، فنقول: إن من التبدل التركيب والائتلاف، لأن ذلك جمع 
 | 
				
			||||||
 | 
					لأنيته. فأنية جرم الكل متناهية اضطراراً. فجرم الكل لا يمكن أن يكون لم يزل. ونبين ذلك بقول آخر - بعد أن اتضح 
 | 
				
			||||||
 | 
					نهاية له بالفعل، فكل زمان فذو نهاية بالفعل، والجرم لأسبق الزمان، فليس يمكن أن يكون جرم الكل لا نهاية له 
 | 
				
			||||||
 | 
					لأسبق بعضها بعضاً أبداً. فإذن قد اتضح أنه لا يمكن أن يكون زمان لا نهاية له: إذ لا يمكن أن يكون فيه كمية، لا 
 | 
				
			||||||
 | 
					اللازمة للجرم أبداً، بعدها حركة الجرم اللازمة للجرم أبداً. فالجرم لأسبق الزمان أبداً، فالجرم، والحركة، والزمان، 
 | 
				
			||||||
 | 
					هو فيه هوية، أعني ما هو في هويا، ولا مدة جرم إلا وحركة، إذ الجرم مع حركته أبداً، كما قد اتضح. فمدة الجرم 
 | 
				
			||||||
 | 
					الجرم اضطراراً. إذ لا زمان إلا بحركة. وإذ لا جرم إلا وحركة، ولا حركة إلا وجرم، ولا جرم إلا بمدة، إذن المدة هي ما 
 | 
				
			||||||
 | 
					كانت حركة كان جرم اضطراراً، وإن كان جرم كانت حركة اضطراراً. وقد تقدم أن الزمان لا يسبق الحركة، فالزمان لأسبق 
 | 
				
			||||||
 | 
					الكل لم يزل ساكناً بالفعل ثم استحال متحركاً بالفعل، والحركة فيه موجودة. فإذن لم يسبق الحركة بتة. فإذن إن 
 | 
				
			||||||
 | 
					والذي لم يزل لا يستحيل كما قدمنا بيان ذلك، فهو إذن مستحيل لا مستحيل، وهذا خلف لا يمكن. فليس يمكن أن يكون جرم 
 | 
				
			||||||
 | 
					تحرك، لأنه كان ممكناً له أن يتحرك، فقد استحال جرم الكل الذي لم يزل من السكون بالفعل إلى الحركة بالفعل. 
 | 
				
			||||||
 | 
					حركة، وهذا خلف لا يمكن. فليس يمكن إن كان الجرم كوباً عن ليس أن يسبق الحركة. فإن كان الجرم لم يزل ساكناً ثم 
 | 
				
			||||||
 | 
					الجرم كان ذاته. فإذاً لم يسبق كون الجرم الحركة بتة. وقد قيل: أنه أولاً ولا حركة. فهو ولا حركة، ولم يكن ولا 
 | 
				
			||||||
 | 
					أشياء عن ليس تكون بهويته حركة، كما قدمنا، حيث صنفنا الحركة أن أحد أنواع الحركة هو الكون. فإذا لم يسبق 
 | 
				
			||||||
 | 
					أولاً ساكناً ثم تحرك، فلا يخلو من أن يكون جرم الكل كوناً عن ليس أو لم يزل، فإن كان كوناً عن ليس، فإن بهويته 
 | 
				
			||||||
 | 
					يمكن أن يكون جرم الكل ساكناً أو لا، كان ممكناً أن يتحرك ثم تحرك، وهذا ظن كاذب اضطراراً. لأن جرم الكل إن كان 
 | 
				
			||||||
 | 
					وهذا محال، وخلف لا يمكن. فليس يمكن أن يكون جرم ولا حركة، فإذن متى كان جرم كانت حركة اضطراراً. وقد نظن أنه 
 | 
				
			||||||
 | 
					إن الحركة لا تكون إذا كان الجرم موجوداً، فهي إذن تكون إذا كان الجرم موجوداً، لا تكون إذا كان الجرم موجوداً. 
 | 
				
			||||||
 | 
					موجودة في الجرم المطلق، فهي موجودة اضطراراً في الجرم المطلق. فإذن الجرم موجود، فالحركة موجودة. وقد قيل 
 | 
				
			||||||
 | 
					بالفعل. إذ هي موجودة في بعض جوهر الإنسان أعني في آخر من الناس. فالحركة باضطرار موجودة في بعض الأجرام، فهي 
 | 
				
			||||||
 | 
					الأجرام. لأن الممكن له الشيء هو الموجود ذلك الشيء في بعض ذوات جوهره، كالكتابة موجودة بالإمكان لمحمد وليست فيه 
 | 
				
			||||||
 | 
					حركة بتة. وإن كان - إذا كان جرم موجوداً - ممكناً أن يكون حركة موجودة، فإن الحركة بالاضطرار موجودة في بعض 
 | 
				
			||||||
 | 
					فالحركة ليست بموجودة، إذ الجرم موجود وهي ليست موجودة، وهذا خلف لا يمكن فليس يمكن أن يكون إن كان جرم موجوداً لا 
 | 
				
			||||||
 | 
					تكون حركة. فإن كان جرم لم تكن حركة. فإما ألا تكون حركة بتة، وإما ألا تكون، وممكن أن تكون؛ فإن لم تكن بتة، 
 | 
				
			||||||
 | 
					الجرم، فكل تبدل فهو لدى الزمان. فإن كانت حركة كان جرم اضطراراً، وإن كان جرم وجب أن تكون حركة اضطراراً، أولاً 
 | 
				
			||||||
 | 
					والاضمحلال، وتبدل كيفياته المحمولة فقط هو الاستحالة، وتبدل جوهره هو الكون والفساد. وكل تبدل فهو عاد عدد مدة 
 | 
				
			||||||
 | 
					المكانية. وتبدل المكان الذي ينتهي إليه الجرم بنهاياته - إما بالقرب من مركزه وإما بالبعد عنه - هو الربو 
 | 
				
			||||||
 | 
					حركة، وإن لم تكن حركة. والحركة هي تبدل ما قد بدل مكان أجزاء الجرم ومركزه أو كل أجزاء الجرم فقط، هي الحركة 
 | 
				
			||||||
 | 
					الحركة. فإن كانت حركة كان زمان، وإن لم تكن حركة لم يكن زمان. والحركة إنما هي حركة الجرم، فإن كان جرم كانت 
 | 
				
			||||||
 | 
					الجرم متناهية، إذ الزمان ليس بموجود؛ ولا جرم بلا زمان، لأن الزمان إنما هو عدد الحركة، أعني أنها مدة بعدها 
 | 
				
			||||||
 | 
					يمكن أن يكون زمان بالفعل لا نهاية له. والزمان زمان جرم الكل، أعني مدته؛ فإن كان الزمان متناهياً فإن أنية 
 | 
				
			||||||
 | 
					إنما هو في القوة. فأما بالفعل فليس يمكن أن يكون شيء لا نهاية له لما قدمنا. وإذ ذلك واجب فقد اتضح أنه لا 
 | 
				
			||||||
 | 
					فكل ما في الذي لا نهاية له بالقوة هو أيضاً بالقوة لا نهاية له، من ذلك الحركة والزمان، فإذن الذي لا نهاية له 
 | 
				
			||||||
 | 
					التزايد من جهة الإمكان، فهو بالقوة بلا نهاية، إذ القوة ليست شيئاً غير الإمكان أن يكون الشيء المقول بالقوة. 
 | 
				
			||||||
 | 
					الكل ممكن أن يزاد فيه بالوهم زيادة دائمة، بأن يتوهم أعظم منه ثم أعظم من ذلك دائماً: فإنه لا نهاية له في 
 | 
				
			||||||
 | 
					كل محمول في الجرم بالفعل فمتناه أيضاً. إن الجرم مناه، فجرم الكل متناه، وكل محمول فيه بعد أيضاً، وأن جرم 
 | 
				
			||||||
 | 
					المتناهي متناهية اضطراراً، فكل محمول في الجرم من كم أو مكان أو حركة أو زمان الذي هو مفصول بالحركة، وجملة 
 | 
				
			||||||
 | 
					والزمان كمية، فليس يمكن أن يكون زمان لا نهاية له بالفعل. والزمان ذو أول متناه، والأشياء أيضاً المحمولة في 
 | 
				
			||||||
 | 
					يمكن أن يكون جرم لا نهاية له. وبهذا التدبير تبين أنه لا يمكن شيء من الكميات أن تكون لا نهاية لها بالفعل. 
 | 
				
			||||||
 | 
					مساوياً له وحده. وهو وحده جزء له ولجزئه اللذين اجتمعا، فالجزء مثل الكل، هذا خلف لا يمكن. فقد تبين أنه لا 
 | 
				
			||||||
 | 
					أحدهما أعظم من الأخر، وإن كان ليس بأعظم مما قبل أن يزاد عليه، فقد زيد على جرم جرم يزد شيئاً، وصار جميع ذلك 
 | 
				
			||||||
 | 
					نهاياتها بالكثرة أو الكيف أو معاً، فهما متناهيان. فالذي لا نهاية له الأصغر متناه، وهذا خلف لا يمكن. فليس 
 | 
				
			||||||
 | 
					نهاياتهما واحدة، فهما إذن ذو نهايات، لأن الأجرام المتساوية التي ليس متشابهة هي التي بعدها جرم واحد. وتختلف 
 | 
				
			||||||
 | 
					بعده فهو بعد بعضه لا محمالة، فأصغرهما مساو بعض أعظمهما، والمتساويان هما اللذان متشابهاتهما أبعاد ما بين 
 | 
				
			||||||
 | 
					وأصغر الشيئين بعد أعظمهما أو بعد بعضه، فأصغر الجرمين اللذين لا نهاية لهما بعد أعظمهما أو بعد بعضه. وإن كان 
 | 
				
			||||||
 | 
					أعظم مما كان قبل أن يزاد عليه أو مساوياً له، فإن كان أعظم مما كان فقد صار ما لا نهاية له أعظم مما لا نهاية، 
 | 
				
			||||||
 | 
					فهو إذن متناه لا متناه، وهذا خلف لا يمكن، فإن كان الباقي لا متناهي العظم، فإنه إذا زيد عليه ما أخذ منه صار 
 | 
				
			||||||
 | 
					الجرم الكائن عنهما جميعاً متناهي العظم، والذي كان عنهما هو الذي كان قبل أن يفصل منه شيء لا متناهي العظم، 
 | 
				
			||||||
 | 
					وإما لا متناهي العظم؛ فإن كان الباقي منه متناهي العظم، فإنه إذا زيد عليه المفصول منه المتناهي العظم، كان 
 | 
				
			||||||
 | 
					بعضه، فإن كان جرم لا نهاية له، فإنه إذا فصل منه جرم متناهي العظم فإن الباقي منه إما أن يكون متناهي العظم، 
 | 
				
			||||||
 | 
					العظم. وهذا واجب أيضاً في كل عظم، وفي كل ذي عظم. وأما الأصغر من كل شيئين متجانسين يعد الأكبر منهما، أو يعد 
 | 
				
			||||||
 | 
					أعظم مما كان قبل أن يزاد عليه ذلك الجرم. وكل جرمين متناهيي الصغر إذا جمعا، كان الجرم كائن عنهما متناهي 
 | 
				
			||||||
 | 
					بالفعل والقوة، وذو النهاية ليس لا نهاية. وكل الأجرام المتساوية إذا زيد على واحد منها جرم كان أعظم منها، وكان 
 | 
				
			||||||
 | 
					بلا توسط، أن كل الأجرام التي ليس منها شيء أعظم من شيء متساوية، والمتساوية أبعاد ما بين نهاياتها متساوية 
 | 
				
			||||||
 | 
					كيفية، ولا نهاية له بالفعل، وأن لا نهاية له إنما هو في القوة، فأقول: إن من المقدمات الأول الحقية المعقولة 
 | 
				
			||||||
 | 
					وأنواع، والأزلي لا جنس له، فالجرم الأزلي. فلنقل الآن أنه لا يمكن أن يكون جرم أزلي، ولا غيره مما له كمية أو 
 | 
				
			||||||
 | 
					فيكون بها فاضلاً، لأنه لا يمكن أن يستحيل إلى أفضل منه ولا إلى أنقص بتة. فالأزلي تام اضطراراً وإذا الجرم ذو جنس 
 | 
				
			||||||
 | 
					والناقص هو الذي لا حال له ثابتة يكون بها فاضلاً، فالأزلي لا يمكن أن يكون ناقصاً، لأنه لا يمكن أن ينتقل إلى حال 
 | 
				
			||||||
 | 
					فالانتقال استحالة ما، فالأزلي لا ينتقل إلى تمام، لأنه لا يستحيل، والتام هو الذي يكون له حال ثابتة يكون بها فاضلاً، 
 | 
				
			||||||
 | 
					يمكن. فالأزلي لا يمكن أن يفسد. والاستحالة تبدل. فالأزلي لا يستحيل لأنه لا يتبدل، ولا ينتقل من النقص إلى التمام، 
 | 
				
			||||||
 | 
					ما كان ذلك والأضداد المتقاربة هي جنس واحد، فالفاسد جنس. فإن فسد الأزلي فله جنس، وهو لا جنس له، هذا خلف لا 
 | 
				
			||||||
 | 
					في جنس واحد، كالحرارة المتبدلة بالبرودة، لأنا لا نعد من المقابلة كالحرارة باليبس أو بالحلاوة أو بالطول أو 
 | 
				
			||||||
 | 
					هو الجنس فليس يتبدل، لأن الفاسد ليس فساده بتأسيس آيسته: وكل متبدل فإنما تبلده بضده الأقرب أعني الذي معه 
 | 
				
			||||||
 | 
					وهذا محال لا يمكن. فالأزلي لا يفسد، لأن الفساد إنما هو تبدل المحمول لا الحامل الأول، فأما الحامل الأول الذي 
 | 
				
			||||||
 | 
					الخاصة له دون غيره، فله موضوع ومحمول. وقد كان تبين أنه لا موضوع ولا محمول. وقد تبين أنه لا موضوع ولا محمول له، 
 | 
				
			||||||
 | 
					القائم له ولغيره، ومن فصل ليس في غيره، فله موضوع هو الجنس القابل لصورته وصورة غيره، ومحمول هو الصورة 
 | 
				
			||||||
 | 
					أجله كان، لأن العلل المقدمة ليست غير هذه. فالأزلي لا جنس له، لأنه إن كان له جنس فهو نوع، والنزع مركب من جنسه 
 | 
				
			||||||
 | 
					لهويته، فالأزلي هو لا قوامه من غيره، فالأزلي لا علة له، فالأزلي لا موضوع له ولا محمول ولا فاعل ولا سبب، أعني ما من 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					إن الأزلي هو الذي لم يجب، ليس هو مطلقاً، فالأزلي لا قبل كوني 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					الفن الثالث
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					الوحدة في المعلولات، وما الوحدة الحق، وما الوحدة بالمجاز لا بالحقيقة، فيما يتلو هذا الفن. ولنكمل هذا الفن.
 | 
				
			||||||
 | 
					وقد قدمنا على كم نوع يقال الواحد في الأشياء المحسوسة، وما يلحق المحسوسة - فقد ينبغي أن نبين بأي نوع توجد 
 | 
				
			||||||
 | 
					واحدة فقط، لا كثرة معها بجهة من الجهات. فإذا اتضح أن العلة الأولى واحدة، والواحد موجود في الأشياء المعلولة - 
 | 
				
			||||||
 | 
					فالشيء غير ذاته، وهذا خلف لا يمكن. فليس العلة الأولى كثيرة ولا كثيرة وواحدة، فلم يبق إذن إلا أن تكون العلة 
 | 
				
			||||||
 | 
					إذن كثرة ووحدة معاً، فتكون علة الكثرة والوحدة، الوحدة والكثرة، والشيء إذن علة ذاته، والعلة غير معلول، 
 | 
				
			||||||
 | 
					العلة لا تخلو من أن تكون واحدة أو كثيرة، فإن كانت كثيرة ففيها الوحدة، لأن الكثرة إنما هي جماع أو حاد، فهي 
 | 
				
			||||||
 | 
					متجانسة، ولا مشاكلة، ولا مشابهة، ولا مشاركة لها، بل هي أعلى وأشرف وأقدم منها، وهي سبب كونها وثباتها. وهذه 
 | 
				
			||||||
 | 
					شبه، ولا مشاكلة، بل هي علة كونها وثباتها أعلى وأشرف وأقدم منها. فقد تبين أن للأشياء جميعاً علة أولى غير 
 | 
				
			||||||
 | 
					والحمرة، والشكل والشكل، وما كان كذلك. فليست علة اشتراك الكثرة والوحدة مع الأشياء الكثيرة الواحدة من جنس، ولا 
 | 
				
			||||||
 | 
					جنس. وإذ ليس هي معهما في جنس، فليست معهما في شبه واحد، لأن المتشابهة في جنس واحد، وفي نوع واحد، كالحمرة 
 | 
				
			||||||
 | 
					الأخرى بالذات. والعلة أقدم من المعلول بالذات، فليس علة اشتراك الكثرة والوحدة مع الأشياء الكثيرة الواحدة في 
 | 
				
			||||||
 | 
					ليس منها شيء أقدم من شيء بالذات، كالإنسانية والفرسية اللتين من جنس الحي، اللتين ليست واحدة منهما أقدم من 
 | 
				
			||||||
 | 
					كما قدمنا، إذ ليس يمكن أن يكون شيء بالفعل لا نهاية له. وأيضاً ليست بمجانسة لهما لأن اللواتي في جنس واحد، 
 | 
				
			||||||
 | 
					المشتركات كما قدمنا بعلة خارجة عن المشتركات. فإن كانت كذلك خرجت العلل بلا نهاية، ولا نهاية في العلل ممتنع، 
 | 
				
			||||||
 | 
					المعلول بالذات كما قدمنا في المقالات التي قلنا فيها على المباينة وليست بمشاركة لهما، لأن المشاركة تجب في 
 | 
				
			||||||
 | 
					بعلة من ذاتهما. فلم يبق إلا أن يكون لاشتراكهما علة أخرى غير ذاتهما أرفع وأشرف منهما وأقدم. إذ العلة قبل 
 | 
				
			||||||
 | 
					ما لا نهاية. وقد تبين أنه لا يمكن أن يكون شيء بالفعل بلا نهاية، فليس يمكن لأن يكون اشتراك الوحدة والكثرة 
 | 
				
			||||||
 | 
					الخلف، وفي اشتراكهما من ذاتهما أن يكون الاشتراك علة من الذات، ويخرج هذا بلا نهاية، فتكون علة لعلة، إلى 
 | 
				
			||||||
 | 
					تكون وحدة وكثرة مشتركة، ويكون اشتراكهما بالبخت، أو بعلة منهما، أو من غيرهما؛ فيلحق في البخت ما قدمنا من 
 | 
				
			||||||
 | 
					وإما كثرة مع وحدة مشتركة ويلحق في وحدة فقط ما يلحق في الكثرة والوحدة التي قدمنا البحث منهما. فينبغي أن 
 | 
				
			||||||
 | 
					فيكون الشيء الذي هو أحد المحسوسات، أو ما يلحق المحسوسات، أعني جميع الأشياء، إما وحدة فقط، وإما كثرة فقط، 
 | 
				
			||||||
 | 
					ذاتها فهي بعضها، فذلك البعض أقدم من باقيها، ولأن العلة قبل المعلول بالذات كما بينا في كتابنا على المباينة. 
 | 
				
			||||||
 | 
					أن تكون من ذاتها، أو يكون لاشتراكها علة أخرى من غير ذاتها، خارجة بائنة عنها. فإن كانت علة اشتراكها من 
 | 
				
			||||||
 | 
					بغير علة. فبقي إذن أن تكون اشتراكها بعلة منذ بدء كونها. فإذا تبين أن اشتراكها بعلة، فلا تخلو العلة من 
 | 
				
			||||||
 | 
					التباين وهي أنيات، فيلزم فيها أيضاً ما قدمنا من الخلف. فليس يمكن أن تكون كانت متباينة ثم اتفقت بالبخت، أعني 
 | 
				
			||||||
 | 
					وحدة فقط، وهما شيئان وشيئان كثرة ؟ فليس يمكن أن يكونا كذلك. وقد يمكن أن نرجع إلى ما كانت علته بالبخت من 
 | 
				
			||||||
 | 
					أي جماعة وحدانيات، فمع الكثرة الوحدة اضطراراً، ولا يمكن غير ذلك، وكيف يمكن أن يكون، إذ هما وهما متباينان 
 | 
				
			||||||
 | 
					بحثنا عن وجود كثرة بلا وحدة، وكيف يمكن أن تكون كثرة ووحدة معاً، وهما متباينان ؟ والكثرة إنما هي كثرة الآحاد، 
 | 
				
			||||||
 | 
					بالبخت أي الاتفاق بلا علة أو بعلة؛ فإن كان بالبخت فقد كانت متباينة فيلزمها المحالات التي لزمت في الأبحاث، وإذا 
 | 
				
			||||||
 | 
					فإذا قد تبين أن اشتراك الكثرة والوحدة في كل محسوس وما يلحق المحسوس، فلا يخلو ذلك من الاشتراك من أن يكون 
 | 
				
			||||||
 | 
					جميع المحسوسات، وما يلحق المحسوسات، أي أن ما فيه الكثرة منها ففيه الوحدة وما فيه الوحدة ففيه الكثرة. 
 | 
				
			||||||
 | 
					كثرة فقط ما لزم الكثرة التي قدمنا ذكرها. فيبقى إذن أيضاً أن تكون الوحدة مشاركة للكثرة، أي مشاركة لها في 
 | 
				
			||||||
 | 
					كانت الوحدة مباينة للكثرة وجب أن يلزم ما كان وحدة فقط ما لزم الوحدة التي قدمنا ذكرها من الخلف، وما كان 
 | 
				
			||||||
 | 
					وأيضاً فإذا قد تبين أن طباع الأشياء وحدة وكثرة، فلا تخلو الوحدة من أن تكون مباينة للكثرة، أو مشاركة لها؛ فإن 
 | 
				
			||||||
 | 
					بلا وحدة، ولا يعرى شيء مما ذكرنا من كثرة ولا من وحدة. فواجب إذن أن تكون الأشياء التي ذكرنا كثيرة وواحدة. 
 | 
				
			||||||
 | 
					بعضها أنه لا يمكن أن يكون منها وحدة بلا كثرة. فقد اتضح أنه لا يمكن أن يكون وحدة فقط بلا كثرة، ولا كثرة فقط 
 | 
				
			||||||
 | 
					ولا كلاً - كما قدمنا - فقد تبين من جميع هذه الأبحاث أنه لا يمكن أن تكون كثرة بلا وحدة في شيء مما ذكرنا، ومن 
 | 
				
			||||||
 | 
					فليس يمكن ألا يكون كثرة. وهنالك تبين أنه لا يمكن أن يكون شيء من التي ذكرنا وحدة بلا كثرة لأنه يكون لا جزءاً 
 | 
				
			||||||
 | 
					ولا وحدة، فإذن لا جزء ولا كل، فلا وحدة. وقد كنا فرضنا أن هناك وحدة، فالوحدة أيس ليس، وهذا خلف لا يمكن أيضاً، 
 | 
				
			||||||
 | 
					جزء ولا كل فلا شيء وإن لم يكن شيء فلا محسوس ولا معقول بتة، ولا وحدة في محسوس ولا معقول بتة، فإن لم يكن جزء 
 | 
				
			||||||
 | 
					والجزء أيضاً جزء واحد، فإن كان جزء كانت الوحدة، وإن كان جزء كان كل، فإن لم ين جزء لم يكن كل، وإن لم يكن 
 | 
				
			||||||
 | 
					بطل بطل ببطلانه الآخر، فلا كل ولا جزء في الأشياء، والأشياء كل وجزء، فالكل والجزء أيس ليسن وهذا خلف لا يمكن. 
 | 
				
			||||||
 | 
					كل، وإن لم يكن كل لم يكن جزء، لأن الكل والجزء من المضاف الذي يجب كل واحد من طرفيه بوجوب الأجزاء. وأيهما 
 | 
				
			||||||
 | 
					تكن جزءاً ولا كلاً، لأن الكل جامع الأجزاء، وأقل ما يكون المجتمع اثنان، والاثنان كثرة، فإن لم يكن كثرة بم يكن 
 | 
				
			||||||
 | 
					المحسوسة وما يلحق المحسوسة. فليس يمكن أن يكون شيء واحد لا كثرة فيه. وأيضاً إن كانت وحدة فقط بلا كثرة لم 
 | 
				
			||||||
 | 
					الأشياء ليس فيه كثرة، لأنه إن لم تكن فيه كثرة لم يكن متحركاً ولا ساكناً، وليس يخلو شيء من نوع حركة وسكون من 
 | 
				
			||||||
 | 
					موجودة، فهي أيس ليس، وهذا خلف لا يمكن. فليس يمكن ألا تكون كثرة. وهنالك تبين أنه لا يمكن أن يكون، ولا واحد من 
 | 
				
			||||||
 | 
					كثرة فإن لم يكن كثرة لم يكن سكون ولا حركة، والسكون والحركة موجودان، فالكثرة موجودة، وقد كنا فرضنا أنها لا 
 | 
				
			||||||
 | 
					فاسد، ولا رابي لا مضمحل، ولا مستحيل موضوع ومحمول، موضوع محمول عليه النفي لأشياء محدودة، فإن كان السكون كان 
 | 
				
			||||||
 | 
					ناقصاً، والاستحالة توجب مستحيلاً، والكون يوجب كائناً، والفساد يوجب فاسداً. وهذه جميعاً توجب كثرة؛ لأنه لا كائن لا 
 | 
				
			||||||
 | 
					وشمال. والمكان بطباعه يوجب كثرة، لأن المكان غير المتمكن ومكان المتمكن. والربو يوجب رابياً، والنقص يوجب 
 | 
				
			||||||
 | 
					بعض، والمكان والأجزاء كل واحد منهما كثرة، لأن الأجزاء أكثر من جزء، والمكان علو، وسفل، وأمام، ووراء، ويمين، 
 | 
				
			||||||
 | 
					إلى غير إما مكان، وإما كم، وإما كيف، وإما جوهر. وهذه كثرة، والساكن ساكن في مكان. وأيضاً بعض أجزائه في 
 | 
				
			||||||
 | 
					فليس يمكن ألا تكون كثرة. وأيضاً إن كانت وحدة فقط بلا كثرة فهي لا متحركة ولا ساكنة، لأن المتحرك يتحرك بانتقال 
 | 
				
			||||||
 | 
					فالكثرة موجودة والشكل موجود، فالكثرة موجودة، وقد فرضنا أنها لا موجودة، فالكثرة أيس ليس، وهذا خلف لا يمكن. 
 | 
				
			||||||
 | 
					خط أو خطية، أو من قسي أو قوسي، أو وتر أو وتري معاً لها زوايا وأطراف، ففيها كثرة. فإن كانت الأشكال موجودة 
 | 
				
			||||||
 | 
					من سطوح قوسية أو وترية، أو مركبة منهما، فالمستدير والكرى لهما مركز وإحاطة، والمركب من قسي أو قوسية، أو 
 | 
				
			||||||
 | 
					إن كانت وحدة فقط بلا كثرة، ولا شكل، لأن الأشكال إما من قسي، وإما من أوتار، وإما من مركبة من قسي وأوتار أو 
 | 
				
			||||||
 | 
					واحد، فالكثرة موجودة فيه. وقد كنا فرضنا أنها لا موجودة، وهذا خلف لا يمكن. فليس يمكن ألا تكون كثرة. وأيضاً 
 | 
				
			||||||
 | 
					والواحد لا ابتداء ولا وسط ولا آخر له، والابتداء والوسط والآخر موجود، فذو الأجزاء موجود، وكل ذي أجزاء أكثر من 
 | 
				
			||||||
 | 
					تكون كثرة. وأيضاً إن كانت وحد فقط بلا كثرة، فلا ابتداء ولا وسط، ولا آخر له، لأن ذلك لا يكون إلا في ذي أجزاء. 
 | 
				
			||||||
 | 
					والاختلاف موجودان، فالكثرة موجودة موجودة، وقد كنا فرضنا أنهل لا موجودة، فهي أيس ليس، وهذا خلف لا يمكن ألا 
 | 
				
			||||||
 | 
					الاتفاق والافتراق، والاختلاف والاتصال في اثنين. فالاثنان كثرة، فإن لم تكن كثرة لم يكن اتفاق ولا اختلاف، والاتفاق 
 | 
				
			||||||
 | 
					ألا تكون كثرة. وأيضاً إن كانت وحدة فقط بلا كثرة؛ فلا اتفاق، ولا اختلاف، ولا اتصال، ولا افتراق؛ لأن أقل ما يكون 
 | 
				
			||||||
 | 
					والتباين موجود، فالكثرة موجودة. وأيضاً قد فرضنا أنها ليست موجودة، فهي أيس ليس، وهذا خلف لا يمكن. فليس يمكن 
 | 
				
			||||||
 | 
					فيه التباين اثنان، والاثنان وما فوقهما كثرة؛ فإن لم تكن كثرة لم يكن تباين، وإن كان تباين فالكثرة موجودة، 
 | 
				
			||||||
 | 
					أيس ليس، وهذا خلف لا يمكن. فليس يمكن ألا يكون كثرة. وأيضاً إن كانت وحدة فقط بلا كثرة، فلا تباين، لأن أقل ما 
 | 
				
			||||||
 | 
					المستثنى. فإن كان استثناء فالكثرة موجودة، والاستثناء والمستثنى موجودان فالكثرة موجودة. وقد فرضنا أنها ليس، وهو 
 | 
				
			||||||
 | 
					كثرة. وأيضاً إن كانت وحدة فقط بلا كثرة، فلا استثناء، لأن الاستثناء إنما يكون لواحد أو لا أكثر من دون أشياء غير 
 | 
				
			||||||
 | 
					والمضادة موجودة، فالكثرة موجودة. وقد فرضنا أنها ليست موجودة، فهي أيس ليس؛ وهذا خلف لا يمكن. فليس يمكن ألا تكون 
 | 
				
			||||||
 | 
					والغيرية أقل ما يقع في الاثنين؛ والاثنان كثرة، فإن لم تكن كثرة لم تكن مضادة، وإن كانت مضادة كانت كثرة، 
 | 
				
			||||||
 | 
					كثرة، ولا بعض الأشياء وحدة بلا كثرة فنقول: إنه إن كانت وحدة فقط بلا كثرة لم تكن مضادة؛ لأن الضد غيرية الضد، 
 | 
				
			||||||
 | 
					الأشياء كثرة بلا وحدة، لأنه لا يمكن أن يكون بعض الأشياء كثرة بلا وحدة. وكذلك تبين أنه لا يمكن أن تكون وحدة بلا 
 | 
				
			||||||
 | 
					لا يمكن. فليس يمكن أن يكون بعض الأشياء كثرة فقط بلا وحدة. وقد تبين من جميع هذه الأبحاث أنه لا يمكن أن يكون 
 | 
				
			||||||
 | 
					يكون شيئاً، وإما ألا يكون شيئاً، فإن كان شيئاً فهو واحد، وإن لم يكن شيئاً فليس هو كثرة، وهو كثرة، وهذا خلف 
 | 
				
			||||||
 | 
					وحدة. وهنالك تبين أنه لا يمكن أن يكون بعض الأشياء كثرة فقط، لأنه لا يمكن أن يكون شيء كثرة فقط، لأنه إما أن 
 | 
				
			||||||
 | 
					شيئاً فليس يأتلف منه كثرة ولا هو كثرة أيضاً. وقد فرض إنه كثرة ولا كثرة، وهذا خلف لا يمكن، فليس يمكن ألا تكون 
 | 
				
			||||||
 | 
					الكثرة. وقد كنا فرضنا أنه كثرة فقط، فهو كثرة فقط بلا وحدة، وهو كثرة ووحدة، وهذا خلف لا يمكن. وإن لم تكن 
 | 
				
			||||||
 | 
					كثرة فقط بلا واحد، وكل مقول إما أن يكون شيئاً، وإما ألا يكون شيئاً، فإن كان شيئاً فهو واحد، فالوحدة موجودة مع 
 | 
				
			||||||
 | 
					موجودة، فالوحدة موجودة. وقد كنا فرضنا أنها لا موجودة، وهذا خلف لا يمكن. فليس يمكن ألا تكون وحدة. وأيضاً إن كانت 
 | 
				
			||||||
 | 
					لأنها إن لم تكن بحال واحدة تتحد بها نفس العارف ورسم المعروف، فلا معرفة، والمعرفة موجودة، فالحال الواحدة 
 | 
				
			||||||
 | 
					آحاداً. وأيضاً إن كانت كثرة فقط بلا واحد لم يكن معرفة، لأن المعرفة برسم، رسم المعروف في نفس العارف بحال واحدة. 
 | 
				
			||||||
 | 
					معدودة، والكثرة معدودة، فلآحاد مع الكثرة وقد كنا فرضنا أنه لا آحاد معها، فهذا خلف لا يمكن. فليس يمكن إلا تكون 
 | 
				
			||||||
 | 
					العدد كثرة مركبة من آحاد، ويفاضل بعض الكثرة على بعض بآحاد. فإن لم يكن عدد، وإن كانت كثرة بلا آحاد لم تكن 
 | 
				
			||||||
 | 
					فليس يمكن ألا يكون وحدة. وأيضاً إن كانت كثرة فقط بلا وحدة، لم تصل الكثرة العدد، لأن أوائل العدد الآحاد، لأن 
 | 
				
			||||||
 | 
					واحد ولا محدود، وإذن لم يكن محدود، فلا حد. وأشخاص الكثرة محدودة فهي محدودة، وهي لا محدودة، وهذا خلف لا يمكن. 
 | 
				
			||||||
 | 
					فقط بلا وحدة، فإن كل شخص من أشخاص الكثرة غير محدود، لأن الحد واحد يقع على معنى واحد، فإن لم يكن في الكثرة 
 | 
				
			||||||
 | 
					الأشخاص المجتمعة فهو لا كثرة، وهو كثرة معاً، وهذا خلف لا يمكن، فليس يمكن أن تكون وحدة. وأيضاً إن كانت كثرة 
 | 
				
			||||||
 | 
					كثرة فقط، لأن الوحدة معها موجودة، وهذا خلف لا يمكن. فإن كانت ليست ذات أشخاص ولا كثرة بتة، لأن معنى الكثرة هي 
 | 
				
			||||||
 | 
					خلف لا يمكن كما قدمنا، فهي إذن أشخاص الكثرة آحاداً اضطراراً. فالوحدة موجودة إذن، لأن كل شخص واحد، فهي إذن 
 | 
				
			||||||
 | 
					الكثرة، وهذا خلف لا يمكن. وإن كان لا متناهي الكثرة، وهوة أصغر من المقسوم، ولا متناه أعظم من لا متناه، وهذا 
 | 
				
			||||||
 | 
					أو لا متناهي الكثرة. فإن كان متناهي الكثرة، وقد كان فرض لا متناهي الكثرة، فهو إذن متناهي الكثرة لا متناهي 
 | 
				
			||||||
 | 
					بتةً، فهي كثرة بلا نهاية، وإذن فضل مما لا يتناهى قسم، وكل مقسوم أعظم مما يفضل منه، فالمفضول متناهي الكثرة، 
 | 
				
			||||||
 | 
					أشخاص، فإما أن تكون أشخاص الكثرة إما آحاداً، وإما ألا تكون آحاداً، فإن لم تكن آحاداً، ولم تنتقص إلى آحاد 
 | 
				
			||||||
 | 
					أن يكون وحدة. وأيضاً إن كانت كثرة فقط، فلا يخلو من أن تكون ذات أشخاص، أو لا ذات أشخاص بتة. فإن كانت ذات 
 | 
				
			||||||
 | 
					أيس. فإن كانت كثرة فقط بلا وحدة فليست بمتحركة أيضاً، ولا ساكنة، كما قد تقدم، وهذا خلف لا يمكن. فليس يمكن إلا 
 | 
				
			||||||
 | 
					غير، وغير الكثرة فالوحدة، فإن لم يكن وحدة فلا تبدل للكثرة وقد فرضنا أن وحدة أيس تتبدل كثرة أيس، فحركة 
 | 
				
			||||||
 | 
					كثرة فقط كانت أيضاً غير متحركة، لأن الحركة تبدل إما بمكان، وإما بكم، وإما بكيف، وإما بجوهر، وكل تبدل فإلى 
 | 
				
			||||||
 | 
					كان بحال واحدة غير متغير ولا متنقل. وإن لم يكن سكون لم يكن ساكن. وإن لم يكن ساكن كان متحركاً. وإن كانت 
 | 
				
			||||||
 | 
					وحدة كانت متحركة، لأنه إن لم تكن وحدة لم تكن حال واحدة، وإن لم تكن حال واحدة لم يكن سكون، لأن الساكن ما 
 | 
				
			||||||
 | 
					الوحدة. فهي متشابهة لا متشابهة معاً، وهذا خلف لا يمكن. فليس يمكن إلا أن تكون وحدة. وأيضاً إن كانت كثرة فقط بلا 
 | 
				
			||||||
 | 
					شيء واحد يعمها تتشابه به، ولا واحد مع الكثرة كما فرضنا، فلا واحد يعمها، فهي لا متشابهة، وهي متشابهة بعدمها 
 | 
				
			||||||
 | 
					لا يمكن. فليس يمكن إلا أن تكون الوحدة. وأيضاً إن كانت كثرة فقط بلا وحدة، فهي لا متشابهة، لأن المتشابهة لها 
 | 
				
			||||||
 | 
					فإن لم يكن خلاف في المقولات فهي متفقة وهي لا متفقة، لأن الإتفاق اشتراك في حال واحدة، أو معنى واحد، وهذا خلف 
 | 
				
			||||||
 | 
					أيس ليس، وهذا خلف لا يمكن. وأيضاً إن كان كل مقول كثرة فقط، فلا شيء يخالف الكثرة، لأن خلاف الكثرة الوحدة خلاف. 
 | 
				
			||||||
 | 
					الاشتراك في حال واحدة أو معنى واحد. فالوحدة موجودة مع الكثرة. وقد فرضنا أن الوحدة ليست بموجودة، فالوحدة 
 | 
				
			||||||
 | 
					واحد بتة. فإن كل طباع كل مقول الكثرة فقط فلا اتفاق اشتراك في حال واحدة، أو معنى واحد. والاتفاق موجود، أعني 
 | 
				
			||||||
 | 
					العقل، من أن يكون واحداً أو كثيراً، أو واحداً وكثيراً معاً، أو بعض هذه الأشياء واحداً لا كثيراً بتة، وبعضها كثيراً لا 
 | 
				
			||||||
 | 
					فلنبين بأكثر مما تقدم فنقول: لا تخلو طباع كل مقول فيما عليه المقول، أعني كل ما أدركه الحس وأحاط بما بينه 
 | 
				
			||||||
 | 
					فالوحدة فيما هي فيه بعرض مستفادة الوحدة له مما هي فيه بالذات. فإذن ها هنا واحد حق اضطراراً لا معلول الوحدة. 
 | 
				
			||||||
 | 
					كان في شيء يعرض فهو في شيء آخر بالذات. وإذ قد بينا أن الوحدة في هذه جميعاً تعرض، فهي لآخر بالذات لا تعرض. 
 | 
				
			||||||
 | 
					والمؤثر من المضاف الذي لا يسبق بعضه بعضاً. وأيضاً كل شيء كان في شيء آخر عرضاً، فهو في شيء آخر ذاتي، لأن كل شيء 
 | 
				
			||||||
 | 
					فالعارض إذن في المعروض مستفاد من غيره، فهو مستفاد من مفيد، فهو أثر في المعروض فيه، والأثر من مؤثر، لأن الأثر 
 | 
				
			||||||
 | 
					منها بأنها لا تنقسم من حيث وجدت. فالوحدة فيها بنوع عرضي، والعارض للشيء لا من ذاته، فالعارض للشيء من غيره، 
 | 
				
			||||||
 | 
					فليست الوحدة في ذلك أيضاً بحقيقية، بل عرضية. فليست الوحدة في شيء مما حددنا بحقيقية، بل إنما هي في كل واحد 
 | 
				
			||||||
 | 
					ومجتمع، لأن غلواته متصلة ومجتمعة، فهو جميع لغلواته، ولأنه منفصل من أمثال أجزاء، أعني اللاتي جميعها فرسخ. 
 | 
				
			||||||
 | 
					إلى غيره ببعض هذه التي قدمنا ذكرها، كالميل فإنه يقال ميل واحد إذ هو كل للغوات، وجزء للفرسخ، ولأنه متصل 
 | 
				
			||||||
 | 
					منه، كحجارة وملاطه وأجزاء جرمه؛ فهو كثير أيضاً. فالوحدة فيه ليست بحقيقية. وقد يقال الواحد أيضاً بالإضافة 
 | 
				
			||||||
 | 
					منهما ذو أجزاء كالبيت: فإن اتصاله الطبيعي شكله وهو ذو جهات، واتصاله العرضي، أعني الصناعي، باجتماع ما ركب 
 | 
				
			||||||
 | 
					ذو أجزاء فهو كثير أيضاً. فالوحدة في الجزء أيضاً ليست بحقيقية. والمتصل الطبيعي، والمتصل العرضي، وكل واحد 
 | 
				
			||||||
 | 
					والعظم وغير ذلك من أجزاء البدن الحي، واللون والطعم وغير ذلك من الأعراض فهو منقسم بانقسام الجوهري. فهو إذن 
 | 
				
			||||||
 | 
					للتجزئة، فهو كثير أيضاً. وأما الجزء العرضي فمحمول في الجزء الجوهري أعني كالطول والعرض والعمق في اللحم 
 | 
				
			||||||
 | 
					ومخ، ودم، ومرة، وبلغم، وجميع ما ركب منه بدن الحي التي ليست بمشتبهة. وكل واحد مما ذكرنا من بدن الحي فقابل 
 | 
				
			||||||
 | 
					الأجزاء، أعني مختلف الأجزاء، فكبدن الحي الذي هو من لحم، وجلد، وعصب، وعروق، وأوردة، ورئة، وصفاق، وحجب، وعظم، 
 | 
				
			||||||
 | 
					كالماء الذي جزؤه مال بكماله، وكل ماء فهو قابل للتجزئة. فجزء الماء إذ هو ماء بكماله كثير. وإما لا مشتبه 
 | 
				
			||||||
 | 
					والجزء إما أن يكون جوهرياً، وإما عرضياً، والجوهري إما مشتبه الأجزاء، وإما لا مشتبه الأجزاء. والمشتبه الأجزاء 
 | 
				
			||||||
 | 
					مجتمعة فهو كثير، فالوحدة فيه أيضاً ليست بحقيقية، فهي فيه نوع عرضي، فهي إذن فيه أثر من مؤثر كما قدمنا. 
 | 
				
			||||||
 | 
					عرضي، فهي إذن من مؤثر - كما قدمنا - فيما كان بنوع عرضي. وكذلك الجميع أيضاً، لأن الجميع يقال على أشياء كثيرة 
 | 
				
			||||||
 | 
					وكل صورة ذات أشخاص، فالكل إذن كثير لأنه ذو أقسام كثيرة. فالوحدة فيه أيضاً ليست بحقيقية، فهي إذن فيه بنوع 
 | 
				
			||||||
 | 
					واحد من المقولات بعض له. والكل المقول على مقولة واحدة ذو أبعاض أيضاً. لأن كل مقولة جنس، فكل مقولة ذات صور، 
 | 
				
			||||||
 | 
					قدمنا - أثر من مؤثر، فالوحدة في العرض العام أثر من مؤثر أيضاً. والكل المقول على المقولات ذو أبعاض، لأن كل 
 | 
				
			||||||
 | 
					والأشد والأضعف، فيقبل الاختلاف، فهو كثير. فالوحدة فيه أيضاً ليست بحقيقية، فهي إذن فيه بنوع عرضي، والعارض - كما 
 | 
				
			||||||
 | 
					أشخاص كثيرة. وإما أن يكون بكمية فيقبل الزيادة والنقص فهو متجزىء؛ وإما أن يكون كيفية فيقبل الشبيه والأشبه، 
 | 
				
			||||||
 | 
					مؤثر، فالوحدة في الخاصة أثر من مؤثر أيضاً. والعرض العام أيضاً مقول على أشخاص كثيرة، فهو كثير، لأنه موجود في 
 | 
				
			||||||
 | 
					بحقيقية، فهي إذن بنوع عرضي، والعارض للشيء من غيره فالعرض أثر في المعروض فيه، والأثر من المضاف، فالأثر من 
 | 
				
			||||||
 | 
					أبانت عن أنيته. فهي كثير لأنها موجودة في أشخاص كثيرة، ولأنها حركة، والحركة متجزئة. فالوحدة أيضاً فيها ليست 
 | 
				
			||||||
 | 
					مؤثر أيضاً. والخاصة هي المقولة على نوع واحد، وعلى كل واحد من أشخاصه مبينة عن أنية الشيء، وليست بجزء لما 
 | 
				
			||||||
 | 
					والعارض للشيء من غيره، فالعرض أثر في المعروض فيه، والأثر من المضاف فالأثر من مؤثر، فالوحدة في الفصل أثر من 
 | 
				
			||||||
 | 
					من جهة الأنواع والأشخاص التي يقال عليها تلك الأنواع. فالوحدة فيه أيضاً ليست بحقيقة، فهي فيه إذن بنوع عرضي، 
 | 
				
			||||||
 | 
					مبين عن أنية الشيء فهو مقول على كل واحد من أشخاص الأنواع التي يقال عليها الفصل مبين عن أنيتها، فهو كثير 
 | 
				
			||||||
 | 
					المضاف، فالأثر من مؤثر، فالوحدة في الجنس أثر من مؤثر اضطراراً أيضاً. والفصل هو المقول على كثير مختلفين بالنوع 
 | 
				
			||||||
 | 
					أيضاً ليست بحقيقية، فهي فيه إذن بنوع عرضي. والعارض للشيء من غيره، فالعرض أثر في المعروض فيه، والأثر من 
 | 
				
			||||||
 | 
					وكل نوع من أنواعه فهو أشخاص كثيرة. وكل شخص من أشخاصه فهو هو أيضاً. فهو كثير من هذه الجهة، فالوحدة فيه 
 | 
				
			||||||
 | 
					كثيرين مختلفين بالنوع مبين عن مائية الشيء. فهو كثير لأنه ذو أنواع كثيرة؛ وكل نوع من أنواعه فهو هو هو. 
 | 
				
			||||||
 | 
					فيه، والأثر من المضاف، فالأثر من مؤثر، فالوحدة من النوع أثر من مؤثر اضطراراً أيضاً. والجنس هو المقول على 
 | 
				
			||||||
 | 
					ذاتية. فليست الوحدة له إذن بحقيقته، فهي إذن فيه بنوع عرضي. والعارض للشيء من غيره، فالعرض أثر في المعروض 
 | 
				
			||||||
 | 
					ناطق، ومن ميت. فالنوع بالذات كثير من جهة أشخاصه، ومن جهة تركيبه. والوحدة التي له إنما هي بالوضع من جهة لا 
 | 
				
			||||||
 | 
					لأنه ذو أشخاص كثيرة، ولأنه مركب من أشياء أيضاً، لأنه مركب من جنس وفصل، كنوع الإنسان الذي هو مركب من حي، ومن 
 | 
				
			||||||
 | 
					والأثر من مؤثر، فالوحدة في الشخص أثر من مؤثر اضطراراً. والنوع هو المقول على كثير مختلفين بالأشخاص. وهو كثير 
 | 
				
			||||||
 | 
					بحقيقته ذاتياً، فهو فيه بنوع عرضي. والعارض للشيء من غيره، فالعارض أثر في المعروض فيه، والأثر من المضاف، 
 | 
				
			||||||
 | 
					الذات. فالوحدة التي فيه، التي هي بالوضع، لا ذاتي فيه، فليست هي إذن وحدة له بالحقيقة. وما لم يكن في الشيء 
 | 
				
			||||||
 | 
					إنما هو واحد من جهة الوضع، لأن كل شخص فمنقسم فهو إذن بالذات، فالوحدة الشخصية مفارقة للشخص، فهو غير واحد 
 | 
				
			||||||
 | 
					أنواعه قولاً متواطئاً؛ والنوع هو في كل واحد من أشخاصه، إذ هو مقول على كل واحد من أشخاصه قولاً متواطئاً؛ والشخص 
 | 
				
			||||||
 | 
					وبأنه كل، وبأنه جزء، وبأنه جميع، وبأنه بعض. ولأن الجنس هو في كل واحد من أنواعه، إذ هو مقول على كل واحد من 
 | 
				
			||||||
 | 
					من المقولات، والكائن من المقولات بأنه جنس، وبأنه نوع، وبأنه شخص، وبأنه فصل، وبأنه خاصة، وبأنه عرض عام، 
 | 
				
			||||||
 | 
					الكل، فقسمة بأقدار ليست بمتساوية، فبعضه ولم يساو بين أبعاضه، فيكون جزءاً له، فالواحد إذن يقال على كل واحدة 
 | 
				
			||||||
 | 
					بين الجزء والبعض فرق، لأن الجزء يقال على ما عدا الكل، فقسمة بأقدار متساوية. والبعض يقال على ما لم يعد 
 | 
				
			||||||
 | 
					يقال جميع الماء، إذ ليس هو أشياء مختلفة قائمة على كل واحد بطباعها. بل يقال كل الماء إذ هو متحد. وكذلك 
 | 
				
			||||||
 | 
					قائم بطباعه غير الآخر فيقع عليها اسم المجموعة. فأما الكل فيقال على كل متحد لأي نوع كان الاتحاد، فلذلك لا 
 | 
				
			||||||
 | 
					ولا يقال جميع الماء، لأن الجميع أيضاً يقال على جمع مختلفات بعرض أو أن تكون موجودة لمعنى ما، وكل واحد منها 
 | 
				
			||||||
 | 
					وما لحق ذلك من المختلفة الأجزاء. وكل الجليل وهي أشخاص مختلفة. فأما الجميع فلا تقال على المشتبهة الأجزاء، 
 | 
				
			||||||
 | 
					وعلى اللاتي ليست بمشتبهة الأجزاء، كقولنا كل الماء، والماء من المشتبهة الأجزاء. وكل البدن المركب من عظم ولحم 
 | 
				
			||||||
 | 
					على الجميع، ويقال على البعض. وقد نظن أن الكل لا فصل بينه وبين الجميع، لأن الكل يقال على المشتبهة الأجزاء، 
 | 
				
			||||||
 | 
					صار واحداً بالإيجاد العرضي، فأما البيت عينه فبالاتحاد الطبيعي. ويقال أيضاً على الكل، ويقال على الجزء، ويقال 
 | 
				
			||||||
 | 
					فإن البيت متصل بالطبع، وتركيبه متصل بعرض، أعني بالمهنة، فهو واحد بالطبع، وتركيبه واحد بالمهنة، لأنه إنما 
 | 
				
			||||||
 | 
					تقدم. والشخص إما أن يكون طبيعياً كالحيوان، أو النبات، وما أشبه ذلك؛ وإما أن يكون صناعياً كالبيت، وما أشبه. 
 | 
				
			||||||
 | 
					فهو يقال إذن على أنواع شتى: ومنها الجنس، والصورة، والشخص، والفصل، والخاصة، والعرض العام، وعلى جمع ما قد 
 | 
				
			||||||
 | 
					تقدم ذلك فلنقل على كم نوع يقال الواحد، فنقول: إن الواحد يقال على كل متصل، وعلى ما لم يقبل الكثرة أيضاً. 
 | 
				
			||||||
 | 
					والشخص والفصل جوهرية، والخاصة والعرض العام عرضية - وإما كلاء وإما جزءاً، وإما مجتمعاً، وإما مفترقاً. وإذ قد 
 | 
				
			||||||
 | 
					شخصاً، وإما فصلاً، وإما خاصة، وإما عرضاً عاماً - وهذه جميعاً يجمعها شيئان: هما الجوهر والعرض. فالجنس والصورة 
 | 
				
			||||||
 | 
					لذلك عرضاً عاماً على حاله، لأنه لم يعرض لأشياء كثيرة. فكل ملفوظ له معنى إما أن يكون جنساً، وإما صورة، وإما 
 | 
				
			||||||
 | 
					الحمار، فيسمى لذلك خاصة، لأنه يخص شيئاً واحداً، أو يكون في أشياء كثيرة يعمها كالبياض في الورق والقطن، فسمي 
 | 
				
			||||||
 | 
					الذي في الجوهر لا يخلو من أن يكون في شيء واحد مفرداً به، خاصاً له دون غيره، كالضحك في الإنسان، والنهيق في 
 | 
				
			||||||
 | 
					وعدمه بعدم الشيء الموضوع له فهو إذن في الجوهر الموضوع، وليس بجوهري بل عارض للجوهر. فسمي لذلك عرضاً. وهذا 
 | 
				
			||||||
 | 
					الأشياء من بعض. وأما الذي ليس بذاتي، فهو ضد هذا التقدم وصفه. وهو الذي قوامه بالشيء الموضوع له، وثباته به، 
 | 
				
			||||||
 | 
					الجوهري المفرق، فهو الفارق بين حدود الأشياء، كالناطق الفاصل لبعض الحي من بعض. وهذا هو المسمى فصلاً، لفصله بين 
 | 
				
			||||||
 | 
					على كل صورة من صور الحي كالإنسان والفرس. وهذا المسمى جنساً، إذ هو جنس واحد واقع على كل واحد من الصور. أما 
 | 
				
			||||||
 | 
					المسمى صورة، إذ هي صورة واحدة واقعة على كل واحد من هذه الأشخاص. وإما أن تقع على صورة كثيرة كالحي الواقع 
 | 
				
			||||||
 | 
					وحده، إما أن يقع على أشخاص، كالإنسان الواقع على كل واحد من أوحاد الناس، أعني على كل شخص إنساني، وهذا هو 
 | 
				
			||||||
 | 
					كثيرة يعطي كل واحد منها حده وأيسه، فهو يجمعها بذلك. والواقع على أشياء كثير بأن يعطي كل واحد منها أيسه 
 | 
				
			||||||
 | 
					جوهرياً، لأن به قوام جوهر الشيء. والجوهري لا يخلو من أن يكون جامعاً أو مفرقاً. أما الجامع، فالواقع على أشياء 
 | 
				
			||||||
 | 
					كالحياة التي بها قوام الحي وثباته، وبعدمها فساد الحي وانتقاصه. فالحياة ذاتية في الحي. والذاتي هو المسمى 
 | 
				
			||||||
 | 
					ذاتية. أعني بالذاتي ما هو مقوم ذات الشيء، وهو الذي وجوده قوام كون الشيء وثباته، وعدمه انتقاص الشيء وفساده. 
 | 
				
			||||||
 | 
					الكلية المتناهية المحيط بها العلم كمال علم حقائقها. والأشياء الكلية العامة لا تخلو من أن تكون ذاتية، أو غير 
 | 
				
			||||||
 | 
					لم يكن متناهياً لم يحط به علم، والفلسفة عالمة بالأشياء التي لها علمها بحقائقها. فهي إذن إنما تطلب الأشياء 
 | 
				
			||||||
 | 
					له معنى لا يخلو من أن يكون كلياً أو جزئياً، والفلسفة لا تطلب الأشياء الجزئية؛ لأن الجزئيات ليست متناهية، وما 
 | 
				
			||||||
 | 
					مطلوب فيه، والفلسفة إنما تعتمد ما كان فيه مطلوب، فليس من شأن الفلسفة استعمال ما لا مطلوب فيه. وما كان 
 | 
				
			||||||
 | 
					أردنا أن نوضح. وإذ قد تبين ذلك فنقول: إن كل لفظ فلا يخلو من أن يكون ذا معنى أو غير معنى، فما لا معنى له فلا 
 | 
				
			||||||
 | 
					علة ذاته، وذاته معلولة أيضاً، أن يكون هو هو، وهو لا هو. فليس يمكن إذن أن يكون شيء علة كون ذاته، وذلك ما 
 | 
				
			||||||
 | 
					يمكن. فليس يمكن أن يكون أيساً وذاته أيس، وهو علة كون ذاته. ومثل هذا أيضاً يعرض إن كان ليساً وذاته ليس، وهو 
 | 
				
			||||||
 | 
					معلولة. فذاته هي لا هو، وكل شيء فذاته هي هو. فيجب إذن من هذا الفن أن يكون هو لا هو، وهو هو، وهذا خلف لا 
 | 
				
			||||||
 | 
					ذاته المكونة لها، فذاته معلولة. والعلة غير المعلول. فقد عرض له إذن أن يكون علة ذاته، وعرض لذاته أن تكون 
 | 
				
			||||||
 | 
					يمكن أن يكون أيساً وذاته ليس. وكذلك أيضاً يعرض إن كان أيساً وذاته أيس، وكان علة كون ذاته، لأنه إن كان علة 
 | 
				
			||||||
 | 
					له غير ما عرض لذاته. فيجب من ذلك - كما قدمنا - أن يكون هو هو، وهو لا هو. وهذا خلف لا يمكن أيضاً. فليس لإذن 
 | 
				
			||||||
 | 
					لا هو، وهو هو، وهذا خلف لا يمكن أيضاً. وكذلك يعرض إن كان أيساً وذاته ليس، أعني أن تكون ذاته غيره، إذ عرض 
 | 
				
			||||||
 | 
					يعرض للآخر، فإذا عرض له أن يكون ليساً، وعرض لذاته أن يكون أيساً، فذاته هي لا هو. وكل شيء فذاته هي هو، فهو 
 | 
				
			||||||
 | 
					كان ليساً وذاته أيس. ويعرض من ذلك أيضاً أن يكون ذاته غيره، لأن المتغايرات هي التي يمكن أن يعرض لأحدهما مال 
 | 
				
			||||||
 | 
					قدمنا، فهو لا علة كون ذاته. وقد تقدم أنه علة كون ذاته، وهذا خلف لا يمكن. فليس يمكن أن يكون كون ذاته، إن 
 | 
				
			||||||
 | 
					ليساً وذاته ليس. وكذلك يعرض إن كان ليساً وذاته أيس، لأنه أيضاً إذ هو ليس لا شيء، ولا شيء لا علة ولا معلول كما 
 | 
				
			||||||
 | 
					إذ ليس هو علة مطلقة. وقد قيل إنه علة كون ذاته، وهذا خلف لا يمكن. فليس يمكن أن يكون علة كون ذاته إن كان 
 | 
				
			||||||
 | 
					شيء. ولا شيء لا علة ولا معلول، لأن العلة والمعلول إنما هما مقولان على شيء له وجود ما، فهو إذن علة كون ذاته، 
 | 
				
			||||||
 | 
					وذاته أيس، أو يكون أيساً وذاته ليس. أو يكون أيساً وذاته أيس. فإن كان ليساً وذاته ليس، فهو لا شيء، وذاته لا 
 | 
				
			||||||
 | 
					شيء. فإنه قد يقال كون في مواضع أخر للكائن من شيء خاصة. لأنه لا يخلو من أن يكون ليساً وذاته ليس، ويكون ليساً 
 | 
				
			||||||
 | 
					ذاته أم لا يمكن ذلكن فنقول: إنه ليس ممكن أن يكون الشيء علة كون ذاته، أعني تكون ذاته مهوية من شيء أو من لا 
 | 
				
			||||||
 | 
					من الجزء الأول وقد يتلو ما قدمنا البحث عن الشيء، هل يمكن أن يكون علة كون 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					الفن الرابع
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					جميعاً لا تنقسم بالفعل ولا بالقوة إلى غير نوعها. وكل واحد منها قابل للتفضيل والتكثير قبولاً دائماً إلى نوعه.
 | 
				
			||||||
 | 
					والزمان. فإن مفصول الجرم جرم، ومفصول السطح سطح، ومفصول الخط حط، ومفصول المكان مكان، ومفصول الزمان زمان، فهذه 
 | 
				
			||||||
 | 
					طباعه إلى غيره، بل كل مفصول منه يحتمل حده واسمه كجميع الأعظام المتصلة، أعني الجرم والسطح والخط والمكان 
 | 
				
			||||||
 | 
					أجزاء لأنه عظيم ما، إذا لحقه الصغر فهو متكثر. ويقال لا ينقسم بالفعل أيضاً، وإن فصل تفصيلاً دائماً، لم يخرج من 
 | 
				
			||||||
 | 
					إذ هو جسم، فهو متكثر. أو كالذي يصغر جداً على الآلة القاسمة فإن يقال له لا ينقسم، إذ ليس آلة تقسمه. وهو ذو 
 | 
				
			||||||
 | 
					الذي لا ينقسم بالفعل فكالذي لا ينقسم لصلابته، كحجر الماس أعني أنه الانقسام عسر. وهذا هو ذو أجزاء اضطراراً، 
 | 
				
			||||||
 | 
					الذي بالعنصر، وقد يقال للواحد الذي لا ينقسم كما قدمنا. والذي لا ينقسم إما لا ينقسم بالفعل وإما بالقوة. أم 
 | 
				
			||||||
 | 
					لعدة من جهة المثل أعني الربو والضمر. فالواحد الحق لا يقال بنوع العنصر. فليس يقال بواحد من أنواع الواحد 
 | 
				
			||||||
 | 
					ضمر بالقوة. فيقال واحد الرابي الضامر، أي أن الرابي هو الضامر. وهذا متكثر أيضاً من جهة العنصر. إذ العنصر 
 | 
				
			||||||
 | 
					والأشياء التي تقال على شيء فيلحقها شيء آخر كالربو المقول على الرابي فإنه يلحقه الضمر، فإن الذي له ربو له 
 | 
				
			||||||
 | 
					بالفعل. وقد يتكثر هذا أيضاً إذ العنصر لعدة مثل. وقد يقال هذا النوع من الواحد بالقوة، أعني الواحد بالعنصر، 
 | 
				
			||||||
 | 
					المقول على الفاسد فإنه يلحقه الكون، إذ فساد الفاسد كون لآخر. فإنه يقال: إن الكائن هو الفاسد بالعنصر. وهذا 
 | 
				
			||||||
 | 
					موجود لمثل كثيرة. وأيضاً قد يقال واحد بالعنصر الأشياء التي تقال على شيء فيلحقها شيء آخر اضطراراً، كالفساد 
 | 
				
			||||||
 | 
					متكثر متجزء. ومن جهة مثلها. وأيضاً اللاتي هي واحدة بالعنصر الأول، أعني بالإمكان، متكثرة من جهة العنصر، إذ هو 
 | 
				
			||||||
 | 
					منه أشياء مختلفة المثل، فإنه يقال الباب والسرير واحد بالعنصر. وهذه أيضاً كثير من جهة عنصرها، إذ عنصرها 
 | 
				
			||||||
 | 
					أو انفعال، أو إضافة، أو غير ذلك من التغاير، كالباب والسرير التي عنصرها واحد، أعني خشباً أو أي عنصر صنع 
 | 
				
			||||||
 | 
					الحق واحداً بنوع من اشتباه الاسم. وإذ قد يقال واحد للتي عنصرها واحد، إلا أنها تغاير بغيرية ما، إما فعل، 
 | 
				
			||||||
 | 
					اللفظ، والعين في اللفظ علة العين في الخط. وهذا النوع من الواحد متكثر أيضاً إذ هو مقول على كثير. فليس الواحد 
 | 
				
			||||||
 | 
					ذاتها، وفي الفكرة، وفي اللفظ، وفي الخط. والعين في ذاتها علة العين في الفكر، والعين في الفكر علة العين في 
 | 
				
			||||||
 | 
					هو جوهر. والمفكر فيه الذي هو جوهر منبىء عن العين الذي هو جوهر. وقد يقال لهذه جميعاً واحداً أعني العينفي 
 | 
				
			||||||
 | 
					قائمة. فإن الخط الذي هو جوهر منبىء عن اللفظ الذي هو جوهر، واللفظ الذي هو جوهر منبىء عن المفكر فيه الذي 
 | 
				
			||||||
 | 
					السبع، ولا السبع علة الكوكب. وقد توجد متشابهة بالاسم بعضها علة بعض كالمخطوط، والملفوظ، والمفكر فيه، والعين 
 | 
				
			||||||
 | 
					وعنصر هذا الكلب متكثر أعني السبع والكوكب. وهذه المشتبهة بالاسم ليس منها شيء علة لشيء، لأن الكوكب ليس علة 
 | 
				
			||||||
 | 
					في ألفاظنا المشتبهة بالاسم كالسبع المسمى كلباً، والكوكب المسمى كلباً، فإنه يقال إنهما واحد بالاسم أي كلب. 
 | 
				
			||||||
 | 
					والشفرة والسكين متجزئة متكثرة. وأيضاً الأسماء المقولة عليها متكثرة. فالواحد الحق لا أسماء مترادفة. وأيضاً إذ 
 | 
				
			||||||
 | 
					متكثر أيضاً، لأن عنصره، وما يقال على عنصره متكثر. فإن حديدة الذبح التي هي عنصر المترادفة، التي هي المدية 
 | 
				
			||||||
 | 
					كالشفرة والمدية المرادفة حديدة الذبح، فقد يقال واحد للمترادفة، وأنه يقال المدية والشفرة واحد، وهذا الواجد 
 | 
				
			||||||
 | 
					بنوع ما إذ هو كل كما قدمنا، وأن الوحدة تقال على الكل. والوحدة بحق لا عقل. وإذ في ألفاظنا الأسماء المترادفة 
 | 
				
			||||||
 | 
					النفس من القوة إلى الفعل. والكليات متكثرة، كما قدمنا، فالعقل متكثر. وقد نظن أنه أول متكثر. وهو متوحد 
 | 
				
			||||||
 | 
					خارجة من القوة إلى الفعل، هي عقل النفس المستفاد الذي كان لها بالقوة. فهي العقل الذي بالفعل الذي أخرج 
 | 
				
			||||||
 | 
					فإنها باتحادها بالنفس صارت النفس عاقلة، أي لها عقل ما أتى لها كليات الأشياء. فكليات الأشياء إذ هي في النفس 
 | 
				
			||||||
 | 
					بالقوة إلى أن صارت عاقلة بالفعل، أعني متحدة بها، أنواع الأشياء وأجناسها، أعني كلياتها. وهي كليات أعيانها، 
 | 
				
			||||||
 | 
					بالقوة، فإنما يخرجه الفعل شيء آخر، وهو ذلك المخرج من القوة إلى الفعل بالفعل. والذي أخرج النفس التي هي عاقلة 
 | 
				
			||||||
 | 
					معقولة، والنفس عاقلة بالفعل عند اتحاد الأنواع بها. وقبل اتحادها بها كانت عاقلة بالقوة وكل شيء هو كشيء 
 | 
				
			||||||
 | 
					والأشخاص محسوسة، أعني بالأشخاص جزئيات الأشياء التي لا تعطي شيئاً أساميها ولا حدودها - فإذا اتحدت بالنفس فهي 
 | 
				
			||||||
 | 
					نفس. ولأن نهاية الفكر إذا سلكت على سبل مستقيمة إلى العقل - وهو أنواع الأشياء، إذ النوع معقول وما فوقه، 
 | 
				
			||||||
 | 
					لكل كثرة وكل جزء، إذ هي معدودة، وهذه أعراض النفس، فهي متكثرة أيضاً ومتوحدة بهذا النوع، فالواحد الحق لا 
 | 
				
			||||||
 | 
					أخلاق لازمة للنفس إلى سرور وغلى آلام كالغضب، والفرق، والفرح والحزن، وما كان كذلك. فالفكر متكثرة ومتوحدة إذ 
 | 
				
			||||||
 | 
					أو خطوطنا وجوداً عرضياً، فإن الحركة موجودة في النفس: أعني أن الفكر ينتقل من بعض صور الأشياء إلى بعض، ومن 
 | 
				
			||||||
 | 
					لا حركة. وإذ كل مدرك بالحس والعقل، إما أن يكون موجوداً في عينه أو في فكرنا وجوداً طبيعياً، وإما في لفظنا 
 | 
				
			||||||
 | 
					الكل المطلق. وجزؤها واحد، إذ الواحد يقال على الجزء المطلق. فإذن - الكثرة موجودة في الحركة - فالواحد الحق 
 | 
				
			||||||
 | 
					بأقسام زمان الاستحالة. فجميع الحركات منقسمة؛ وهي أيضاً متوحدة. لأن كل حركة فكلها واحدة؛ إذ الوحدة تقال على 
 | 
				
			||||||
 | 
					الكون والفساد بحركة الربو والنقص والفساد منقسمة جميعاً. وكذلك الاستحالة شديد، والاستحالة إلى التمام، منقسمة 
 | 
				
			||||||
 | 
					النقص. وكذلك الكون والفساد؛ فإن من بدء الكون والفساد إلى نهاية الكون والفساد، منقسماً بقسم الزمان الذي فيه 
 | 
				
			||||||
 | 
					نهايات الرابي والناقص منقسمة لوجودها في أقسام المكان ما بين نهاية الجرم قبل النقص إلى نهايته في نهاية 
 | 
				
			||||||
 | 
					أقسام: منقسم بأقسام المكان فهو متكثر، فالحركة المكانية متكثرة. وكذلك الربوية والنقصية متكثرة فإن حركة 
 | 
				
			||||||
 | 
					مكان، أو ربو أو نقص، أو كون أو فساد، أو استحالة. والحركة متكثرة لأن المكان كمية، فهو منقسم. فالموجود في 
 | 
				
			||||||
 | 
					واحداً من هذه. والحركة فيما هو من هذه، أعني الجسم الذي هو هيولى مصورة، إذ الحركة إنما هي نقلة من مكان إلى 
 | 
				
			||||||
 | 
					والخاصة والعرض العام والكل والجزء والجميع. وكذلك الواحد يقال على كل واحد من بعده. فإن الواحد الحق ليس هو 
 | 
				
			||||||
 | 
					متكثر بنوع ما. وقد قيل إن الكثرة تكون في كل واحد من المقولات، وفيما يلحقها من الجنس والنوع والشخص والفصل 
 | 
				
			||||||
 | 
					لأن الذي هو كذلك أيضاً منقسم، لأن كل كمية أو ذي كمية يقبل الزيادة والنقص. وما قبل النقص منقسم، والمنقسم 
 | 
				
			||||||
 | 
					ينقسم بها، ولا صورة مؤتلفة من جنس وأنواع، فإن الذي هو كذلك يتكثر بما ألف منه. ولا هو كمية بتة، ولا له كمية 
 | 
				
			||||||
 | 
					الواحد الحق أزلي، ولا يتكثر بتة بنوع من الأنواع أبداً، ولا يقال واحد بالإضافة إلى غيره. فإذ هو الذي لا هيولى له 
 | 
				
			||||||
 | 
					يضاف إلى مجانسه، فأقول: لا جنس للواحد الحق. وقد قدمنا أن ما له جنس فليس بأزلي وأن الأزلي لا جنس له، فإذن 
 | 
				
			||||||
 | 
					أكثر أو أقل من قول. فإذا تبين ما قدمنا، فليس إذن الواحد بالحقيقة قابلاً للإضافة إلى مجانسه، وإن كان له جنس 
 | 
				
			||||||
 | 
					لا يقال قولاً صادقاً: قول أكثر أو أقل من عدد، ولا عدد أكثر أو أقل من قول، بل عدد أكثر أو أقل من عدد، وقول 
 | 
				
			||||||
 | 
					بذاته. وكذلك الكثير والقليل لا يقالان فيما يقالان عليه إلا في جنس واحد أعني فيما يقال عليه العدد. والقول فإنه 
 | 
				
			||||||
 | 
					طويل وكذلك يقال: قول طويل، أي في زمان طويل. إلا أن القول والعدد يحتمل كل واحد منهما اسم الطول واسم المقصر 
 | 
				
			||||||
 | 
					فلا يقال عليه طول ولا قصر بذاته، بل يقال ذلك عليه من جهة الزمان الذي هو فيه. فإنه يقال عدد طويل أي زمان 
 | 
				
			||||||
 | 
					الطول والقصر إلا المكان في جنس واحد، أي في جزم فقط، أو سطح فقط، أو مكان فقط، أو زمان فقط. فأما عدد أو قول 
 | 
				
			||||||
 | 
					خط للزمان يظهر ظهوراً تاماً، فإنه لا يقال جرم أطول وأقصر من زمان. فبين ألا يقال الطول والقصر لما يقال له 
 | 
				
			||||||
 | 
					إلى أن خط هذا أطل من خط هذا. فإن هذه جماعات من الكمية المتصلة. والزمان أيضاً من الكمية المتصلة، فلأنه لا 
 | 
				
			||||||
 | 
					أبعاد ما نسبت إليه، والبعد الواحد خط، فإذن إنما نذهب من أن جرماً أطول أو أقصر من سطح أو سطح أو خط أو مكان 
 | 
				
			||||||
 | 
					كاذب، لأنه إن ظن أن طول جرم أطول أو أقصر من طول سطح أو خط أو مكان فإن طول كل واحد منها هو بعد واحد من 
 | 
				
			||||||
 | 
					أو خط أو مكان أو زمان أو عدد أو قول، وإن ظن أن جزءاً ما أطول أو أقصر من سطح أو خط أو مكان، فإن ذلك ظن 
 | 
				
			||||||
 | 
					ولا قول أعظم أو أصغر من واحد من باقي الأعظام بل من قول. وكذلك لا يقال قولاً صادقاً: جسم أطول أو أقصر من سطح 
 | 
				
			||||||
 | 
					قول، بل من مكان. ولا زمان أعظم أو أصغر من عدد أو قول، بل من زمان. ولا عدد أعظم أو أصغر من قول، بل من عدد. 
 | 
				
			||||||
 | 
					سطح. ولا خط أعظم أو أصغر من مكان أو زمان أو عدد أو قول، بل من خط. ولا مكان أعظم أو أصغر من زمان أو عدد أو 
 | 
				
			||||||
 | 
					أصغر مما ليس في جنسه قولاً صادقاً. ولا يقال سطح أعظم أو أصغر، من خط أو مكان أو زمان أو عدد أو قول، بل من 
 | 
				
			||||||
 | 
					سطح، أو خط، أو مكان، أو زمان، أو عدد، أو قول، بل من جسم. فكذلك كل واحد من باقي الأعظام لا يقال أعظم ولا 
 | 
				
			||||||
 | 
					إلى سطح، ولا إلى خط، ولا إلى مكان، ولا إلى زمان، ولا إلى عدد، ولا إلى قول. فإنه لا يقال جسم أعظم أو أصغر من 
 | 
				
			||||||
 | 
					وإنما يضاف كل واحد منهما إلى آخر من جنسه لا من غير جنسه، كالعظم فإنه إن كان جسماً فإنه يضاف إلى جسم آخر لا 
 | 
				
			||||||
 | 
					قليلاً بطباعه. فإذا كان العظيم والصغير، والطويل والقصير، والكثير والقليل، لا يقال واحد منهما مرسلاً بالإضافة، 
 | 
				
			||||||
 | 
					جمع من واحدين، فهو مركب من واحدين، والمركب ذو أجزاء، فهو كل لأجزائه، والكل أكثر من الجزء، فليس الاثنان 
 | 
				
			||||||
 | 
					جميع الأعداد أكثر منه. فإذن إنما هو قليل إذا أضيف إلى الأعداد. فأما إذا توهم طبعه، فهو تضعيف الواحد، فهو 
 | 
				
			||||||
 | 
					يتوهم غيره، لم يكن بطباعه قليلاً. فإذن إنما تلحقه العلة إذا أضيف إلى ما هو أكثر منه، فإذن إنما هو قليل إذ 
 | 
				
			||||||
 | 
					الوحدانيات، وجميع الوحدانيات، وتأليف الوحدانيات. فإذن الاثنان أول العدد، والاثنان إذا أفرد بطباعه، ولم 
 | 
				
			||||||
 | 
					العدد لا عدد بتة. فإذ قد تبين أن الواحد ليس بعدد، فالحد المقول على العدد إذن هو محيط العدد أعني أنه عظيم 
 | 
				
			||||||
 | 
					أساسها وحدودها، كالحي في الأحياء، والجوهر في الجواهر، أعني أسماءها الجوهرية لا العرضية. فإذن الواحد ركن 
 | 
				
			||||||
 | 
					جواهر - ويحق إذن للأشياء التي تركب منها أشياء فتكون تلك الأركان أجزاء للمركبة منها، لا شيء يمنع من أن يعطيها 
 | 
				
			||||||
 | 
					لأنه ركن العدد المقر به عدداً، لأن العدد مركب من آحاد فهو آحاد. كما أن الجسم - إذ هو مركب من جواهر - فهو 
 | 
				
			||||||
 | 
					الذي هو صورة - وحده أن يكون كل واحد منهما جسماً، إذ كان المكركب منهما جسماً. وكذلك لا يجب أن يكون الواحد، 
 | 
				
			||||||
 | 
					هو جواهر فقط، وهو بطباعه جسم أعني مركباً من عنصر وأبعاد التي هي صورته، ولم يعرض للعنصر وحده، وللبعد - 
 | 
				
			||||||
 | 
					التي يركب الجسم منها هي العنصر والصورة. فعرض للجسم - إذ هو مركب - جواهر العنصر والصورة أن تكون جواهر، إذ 
 | 
				
			||||||
 | 
					ومنه العدد المقر به المركب من واحد بسيط. وهذا ظن غير صادق، لأن التمثيل عكس. وذلك أن الجواهر الأولى البسيطة 
 | 
				
			||||||
 | 
					هو العنصر المصور أعني الجسم. فنظن أنه يمكن أن يكون العدد أيضاً منه بسيط هو الواحد الذي ركب منه المقر به 
 | 
				
			||||||
 | 
					جوهرين بسيطين، أعني العنصر والصورة، كما قد قيل أن الجواهر ثلاثة: بسيطان: هما العنصر والصورة ومركب منهما 
 | 
				
			||||||
 | 
					وبعضه مركب من ذلك البسيط. ولكن قد يظن أنه ممكن أن يكون كذلك بالجوهر المركب، أعني الجسم الذي هو مركب من 
 | 
				
			||||||
 | 
					والثنان مركب من الواحد البسيط، فليس يمكن أن يكون العدد بعضه بسيط هو ركنه - أعني ببسيط لا مركباً من شيء - 
 | 
				
			||||||
 | 
					الثلاثة، فله ركن هو الواحد. والواحد وإن كان ركن الاثنين فليس له ركن، فهو لا مركب، فقد فارق الاثنين بأنه بسيط. 
 | 
				
			||||||
 | 
					- وهما عدد - ركن الثلاثة، أن الواحد عدد، وهو ركن الاثنين. وهذا الظن غير صادق، لأن الاثنين، وإن ظن أنه ركن 
 | 
				
			||||||
 | 
					وقد يظن أن الواحد ركن الاثنين، والاثنين ركن الثلاثة، إذ في الثلاثة اثنان موجودان، فنظن كذلك لإذ كان الاثنان 
 | 
				
			||||||
 | 
					لما ركب من الواحد أيضاً، فيكون الواحد عدداً ركنه ركن كل التي نقر بأنها أعداد، فيمكن أن يكون الواحد عدداً. 
 | 
				
			||||||
 | 
					العدد المقر به عند الكل مؤلفاً من آحاد، فالواحد ركن العدد، فليس بعدد، وليس للواحد ركن ركب منه فيكون ركناً 
 | 
				
			||||||
 | 
					لكلامهن فغنها ليست هي الكلام، لأن الكلام صوت مؤلف موضوع دال على شيء مع زمان، والحرف صوت طباعي لا مؤلف. فإن كان 
 | 
				
			||||||
 | 
					إذن: إن ركن الشيء الذي يبنى منه الشيء أعني الذي ركب منه الشيء ليس هو الشيء كالحروف الصوتية التي ركب منها 
 | 
				
			||||||
 | 
					فيه الواحد إذ ليس يوجب أنه منقسم اضطراراً. فإذ لم يظهر أنه واجب من هذا البحث أن الواحد ليس بعدد فنقول 
 | 
				
			||||||
 | 
					الواحد عدد من أن يحد العدد الفرد بأنه هو العدد الذي انقسم بقسمين. فإن قسميه غير متماثلي الوحدانيات، فيدخل 
 | 
				
			||||||
 | 
					هذا الحد الذي حد به العدد الفرد يظن أنه لا يجب إلا بعد أن نبين لأن الواحد ليس بعدد. وإلا فما يمنع من قال إن 
 | 
				
			||||||
 | 
					متماثلي الوحدانيات. فالواحد إذن منقسم لا منقسم، وآحاد لا آحاد، وهذا خلف لا يمكن. فإذن ليس الواحد عدداً. ولكن 
 | 
				
			||||||
 | 
					آحاد لا آحاد، وهذا خلف لا يمكن أيضاً. وإن لم يكن زوجاً فهو فرد. والفرد هو الذي كل قسمين ينقسم إليهما غير 
 | 
				
			||||||
 | 
					إن كانت فيه آحاد فهو مركب من آحاد، فهو مركب من ذاته، وهو واحد، وهو آحاد، والواحد واحد فقط لا آحاد، فهو 
 | 
				
			||||||
 | 
					زوجاً فهو منقسم قسمين مما يلي الوحدانيات، والواحد لا ينقسم، فهو لا ينقسم، وهو منقسم، وهذا خلف لا يمكن. وأيضاً 
 | 
				
			||||||
 | 
					بالطبع. وأيضاً لا يخلو الواحد من أن يكون عدداً أو لا عدداً، فإن كان عدداً، فإما أن يكون زوجاً، وإما فرداً. فإن كان 
 | 
				
			||||||
 | 
					فوق ذلك. فإذن الواحد كمية. فالواحد باقي الأعداد تحت الكمية. فإذن ليس الواحد عدداً باشتباه الأيس، فإذن هو 
 | 
				
			||||||
 | 
					أكثر منه، فإنه يجب أن يكون الواحد عدداً، أو له مساو وهو واحد آخر، ولا مساو وهو أكثر منه أعني اثنين وما 
 | 
				
			||||||
 | 
					أقل منه، وإنما له أكثر منه. وإن كان يجب أن يكون الاثنان عدداً إذ ليس مساو، وهو اثان آخران، ولا مساو وهو 
 | 
				
			||||||
 | 
					وجميع الكمية، مساو ولا مساو، أن لكل عدد عدداً مثله أي أكثر منه وأقل منه، فالاثنان إذن لا عدد، إذ ليس عدد 
 | 
				
			||||||
 | 
					فإن كان هذا لا يجب في الأعداد التي لا شك فيها، فليس يجب في الوحدانية. وإن كان معنى قولنا إن خاصة العدد، 
 | 
				
			||||||
 | 
					أكثر منه، فتكون للثلاثة ثلاثات بعضها مساو لها، وبعضها أقل منها، وبعضها أكثر منها. وكذلك يجب في كل عدد، 
 | 
				
			||||||
 | 
					أقل. لأنه إن كان يلزم الواحد، فهو أيضاً يلزم كل عدد، أعني أن يكون له سمىً مساوياً له، وسمي أقل منه، وسمي 
 | 
				
			||||||
 | 
					الواحد إن كان عدداً لزمته خاصة الكمية التي هي مساو ولا مساو، فتكون للواحد آحاد بعضها مساو له، وبعضها أكثر أو 
 | 
				
			||||||
 | 
					بالإضافة إلى شيء واحد، كالطبيات إلى الطب، والمبرئات إلى البرء. ولكن كيف يمكن أن يكون هذا الظن صادقاً، أعني أن 
 | 
				
			||||||
 | 
					يقال إنها أعداد باشتباه الاسم لا بالطبع، فإذن الواحد ليس بعدد بالطبع، بل باشتباه الاسم. إذ ليس يقال الأعداد 
 | 
				
			||||||
 | 
					الاثنين وما فوقه كمية فإن الواحد ليس تحت الكمية، فهو تحت مقولة أخرى. فإذن الواحد هو وباقي الأعداد، إنما 
 | 
				
			||||||
 | 
					بالواحد بل إلى الوحدة عينها، فالوحدة لا تنقسم بتة. فإن كان الواحد عدداً، وليس بكمية، وباقي الأعداد أعني 
 | 
				
			||||||
 | 
					الأفراس معدودة بالخمسة التي هي عدد لا هيولى له؛ وإنما الهيولى في الأفراس. فلا نذهبن من قولنا زاحد إلى الموحد 
 | 
				
			||||||
 | 
					يوجد بالواحد، فصار واحداً، فإن ذلك موجود لا واحداً. والمؤلفة من ذلك معدودات لا عدد كقولنا: خمسة أفراس، فإن 
 | 
				
			||||||
 | 
					ليس، وهذا خلف لا يمكن فليس الواحد إذن عدداً. ولا نذهبن من قولنا: واحد، إلى هيولى الواحد أعني العنصر الذي 
 | 
				
			||||||
 | 
					الواحد الأصغر بعد الواحد الأكبر، أو بعد بعضه. فالواحد الأكبر بعض، فهو منقسم، والواحد لا ينقسم، فانقسامه أيس 
 | 
				
			||||||
 | 
					وتلزمه؛ أعني أنه مساو، ولا مساو، فإن كان للواحد أوحاد بعضها مساوية له، وبعضها لا مساوية له فالواحد منقسم، بأن 
 | 
				
			||||||
 | 
					يلحقنا من ذلك شناعة قبيحة جداً. لأنه إن كان الواحد عدداً فهو كمية ما، وإن كان الواحد كمية فخاصية الكمية تلحقه 
 | 
				
			||||||
 | 
					عدداً، ولا شيء أقل من الواحد، فالواحد هو الأقل المرسل، وهذا ظن ليس بصادق، لأنا إن قلنا إن الواحد عدد نظن أنه 
 | 
				
			||||||
 | 
					الاثنين، فإن الاثنين أقل الأعداد. فالاثنان هو القليل المرسل، إذ ليس هو كثير، إذ لا عدد أقل منه. وإن كان الواحد 
 | 
				
			||||||
 | 
					واحد. وأما القليل فقد نظن أنه يقال مرسلاً. وذلك أنه يظن أنه كان أول العدد اثنين، وكل عدد غير الاثنين أكبر من 
 | 
				
			||||||
 | 
					يعرض العظيم والصغير، والطويل والقصير، من أنه لا يقال قولاً مرسلاً بالإضافة. وبيان ذلك بما قدمنا؛ فإن التدبير 
 | 
				
			||||||
 | 
					بمثل ما قدمنا في العظيم والصغير. فأما القليل والكثير فإنهما خاصة للكمية المنفصلة، وقد يعرض للكثير ما 
 | 
				
			||||||
 | 
					فيقالان على كل كمية متصلة خاصان لهما دون غيرها من الكميات. وإنما يقالان بالإضافة أيضاً قولاً مرسلاً. وبيان ذلك 
 | 
				
			||||||
 | 
					يكون صغيراً مرسلاً، وإنما يكون الصغير بالإضافة أيضاً. والعظيم والصغير يقالان على كل كمية. فأما الطويل والقصير 
 | 
				
			||||||
 | 
					أصغر منه. إذن قد تبين أنه لا يكون شيء لا شيء أعظم منه، لا بالقوة ولا بالفعل بتة. وبهذا التدبير تبين أنه لا 
 | 
				
			||||||
 | 
					وإن كان العظيم المرسل هو العظيم بالإضافة، فالمرسل والإضافة اسمان مترادفان لشيء واحد، وهو ما كان شيء آخر 
 | 
				
			||||||
 | 
					بالإضافة، إذ لا يقال عظيم إلا مرسلاً أو بالإضافة. فإن كان العظيم المرسل لا عظيماً، فهو لا هو، وهذا خلف لا يمكن. 
 | 
				
			||||||
 | 
					المرسل إنما يراد به ما لا شيء أعظم منه، فإذن العظيم المرسل لا عظيم مرسل فإما ألا يكون عظيم، وإما أن يكون عظيم 
 | 
				
			||||||
 | 
					الكل أعظم من الجزء. فإن ضعف العظيم الذي ظن أنه مرسل أعظم من العظيم المظنون أنه العظيم المرسل. والعظيم 
 | 
				
			||||||
 | 
					الجزء، وهذا خلف لا يمكن. وكذلك يعرض إن كان أصغر منه أن يكون الكل أصغر من الجزء، وهذا أشد إحالة وبشاعة. فإذن 
 | 
				
			||||||
 | 
					المرسل أعظم من العظيم المرسل فهو مثله أو أصغر منه. فإن كان مثله عرض من ذلك محال بشع: وهو أن يكون الكل مثل 
 | 
				
			||||||
 | 
					والنصف جزء الكل، فذو الضعف جزء الضعف. فإذن العظيم المرسل كل، والعظيم المرسل جزء، فإن لم يكن ضعف العظيم 
 | 
				
			||||||
 | 
					العظيم المرسل موجود بالفعل أو بالقوة. فإذن للعظيم المرسل ضعف، والضعف كل لذي الضعف، وذو الضعف نصف للضعف، 
 | 
				
			||||||
 | 
					لا ضعف له بالفعل ولا بالقوة، وتضعيف الشيء تثني كميته، وتثنية كميته موجودة بالفعل أو بالقوة، فإذن تثنية 
 | 
				
			||||||
 | 
					لا يمكن. فإذن ليس شيء يمكن أن يكون شيء آخر أعظم من العظيم المرسل، لا بالفعل ولا بالقوة. فإذن قد وجد عظيم 
 | 
				
			||||||
 | 
					عرض له أن يكون صغيراً، إذ آخر أعظم منه، فإن لم يكن كذلك، فالذي هو أعظم منه أصغر منه أو مثله، وهذا خلف 
 | 
				
			||||||
 | 
					لا نهاية له بالفعل، ولا بالقوة، لأنه إن كان شيء آخر أعظم منه بالفعل أو بالقوة، فليس هو عظيم مرسلاً، لأنه قد 
 | 
				
			||||||
 | 
					بالقوة بتة. لأنه لم يكن يمكن أن يكون شيء آخر أعظم من المقول عليه عظيم قولاً مرسلاً. فكان العظيم المرسل ليس 
 | 
				
			||||||
 | 
					ولو كان يقال العظيم مرسلاً على ما يقال عليه العظيم، وكذلك الصغير، لم يكن لما لا نهاية له وجود لا بالفعل ولا 
 | 
				
			||||||
 | 
					وكذلك يقال للهناة عظيمة إذا أضيفت إلى هناة أصغر منها. ويقال للجبل الصغير إذا أضيف إلى جبل آخر أعظم منه. 
 | 
				
			||||||
 | 
					شيء منها على شيء قولاً مرسلاً بل بالإضافة فإنه إنما يقال عظيم عندما هو أصغر منه، وصغير عندما هو أعظم منه. 
 | 
				
			||||||
 | 
					بالحقيقة، ولنقدم كذلك ما يجب تقديمه فنقول: إن العظيم والصغير، والطويل والقصير، والكثير والقليل، لا يقال 
 | 
				
			||||||
 | 
					وهو الجزء الأول فلنقل الآن بأي نوع توجد الوحدة في المقولات، وما الواحد بالحق، وما الواحد بالمجاز لا 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					القدرة التامة، والقوة الكاملة، والجواد الفائض. والحمد لله رب العالمين، وصلواته على محمد النبي وآله أجمعين.
 | 
				
			||||||
 | 
					بإفادة الواحد الحق جل وتعالى عن صفات الملحدين، فلنكمل هذا الفن، ولنتله بما يتلو ذلك تلواً طبيعياً، بتأييد ذي 
 | 
				
			||||||
 | 
					أرادنا إيضاحه من تمييز الواحدات ليظهر الواحد الحق، المفيد المبدع، القوي الممسك، وما الواحدات بالمجاز، أعني 
 | 
				
			||||||
 | 
					الحق إذن هو الأول المبدع الممسك كل ما أبدع، فلا يخلو شيء من إمساكه وقوته، إلا عاد ودبر. فإذن قد تبين ما 
 | 
				
			||||||
 | 
					الوحدة، وتوحدها هو تهويها. فبالوحدة قوام الكل، لو فارقت الوحدة عادت ودبرت مع الفراق معاً بلا زمان. فالواحد 
 | 
				
			||||||
 | 
					الحق الأول - إذ هو علة مبدأ التهوي أي الانفعال - فهو المبدع جميع المتهويات. فإذن لا هوية إلا بما فيها من 
 | 
				
			||||||
 | 
					الإبداع هو الحق الأول. والعلة التي منها مبدأ الحركة، أعني المحرك مبدأ الحركة. أعني المحرك هي الفاعل، فالواحد 
 | 
				
			||||||
 | 
					لم يفد الوحدة من مفيد، بل هو بذاته واحد. والذي يهوي مبدع. وإذ كانت علة التهوي الواحد الحق الأول، فعلة 
 | 
				
			||||||
 | 
					محسوس، وما يلحق المحسوس، فيوجد كل واحد منها إذن يهوي بهوية إياها. فإذن علة التهوي من الواحد الحق، الذي 
 | 
				
			||||||
 | 
					الوحدة عن الواحد الحق الأول، هو انفعال يوجد ما لم يكن. فإذن فيض الوحدة عن الواحد الحق الأول، هو تهوي كل 
 | 
				
			||||||
 | 
					اضطراراً، فباضطرار إن لم تكن وحدة لم تكن كثرة بتة. فإذن كل متهو إنما هو انفعال يوجد ما لم يكن. فإذن فيض 
 | 
				
			||||||
 | 
					الوحدة والكثرة معاً وكانت الوحدة فيها جميعاً أثراً من مؤثر عارضاً فيه لا بالطبع، ولا كانت الكثرة جماعة وحدانيات 
 | 
				
			||||||
 | 
					واحد لا يتكثر بتة، وليس وحدته شيئاً فير هويته. فإذا كان كل واحد من المحسوسات، وما يلحق المحسوسات، فيها 
 | 
				
			||||||
 | 
					المعلولات للوحدة إنما يذهب عن وحدته إلى غير هوية، أعني أنه يتكثر من حيث يوجد وهو كثير لا واحد مرسل، أعني مرسل 
 | 
				
			||||||
 | 
					الول. وكل قابل للوحدة فهو معلول، فكل واحد غير الواحد بالحقيقة فهو الواحد بالمجاز لا بالحقيقة، فكل واحد من 
 | 
				
			||||||
 | 
					غيره، لأنه لا يمكن أن تكون المفيدات بعضها لبعض بلا نهاية في البدء. وعلة الوحدة في الموحدات هو الواحد الحق 
 | 
				
			||||||
 | 
					يمكن أن تكون الأشياء بلا نهاية بالفعل. فأول علة للوحدة في الموحدات هو الواحد الحق الذي لم يفد الوحدة من 
 | 
				
			||||||
 | 
					فيما هو فيه بالعرض، فكل ما كان في شيء يعرض فمعرضه فيه غيره، إما ما ذلك الشيء فيه يعرض، وإما بالذات، وليس 
 | 
				
			||||||
 | 
					جزء، ولا للجوهر ولا للعرض، ولا ينوع من أنواع القسمة أو التكثر بتة. فأما الواحد بجميع الأنواع غيره، فإذا كان 
 | 
				
			||||||
 | 
					ولا ينقسم بنوع من الأنواع، ولا من جهة ذاته، ولا من جهة غيره، ولا زمان ولا مكان، ولا حامل ولا محمول، ولا كل ولا 
 | 
				
			||||||
 | 
					الأشياء، فهي غير الواحد الحق، كما قدمنا. والواحد الحق هو الواحد بالذات الذي لا يتكثر بتة بجهة من الجهات، 
 | 
				
			||||||
 | 
					بالحقيقة. فهو إذن وحدة فقط محض. أعني لا شيء غير وحدة. وكل واحد غيره فمتكثر. فإذن الوحدة، إذ هي عرض في جميع 
 | 
				
			||||||
 | 
					ذو جنس، ولا ذو فصل، ولا ذو شخص، ولا ذو خاصة، ولا ذو عرض عام، ولا متحرك ولا موصوف بشيء مما بقي أن يكون واحداً 
 | 
				
			||||||
 | 
					الحق إذن لا ذو هيولى ولا ذو صورة، ولا ذو كمية، ولا ذو كيفية، ولا ذو إضافة، ولا موصوف بشيء من باقي المعقولات؛ ولا 
 | 
				
			||||||
 | 
					يحلق مسامتها. وإذ هذه التي ذكرنا أبسط مما هي له، أعني ما يقال عليه، فما يقال عليه أشد تكثراً، فالواحد 
 | 
				
			||||||
 | 
					التكثير؛ ولا المركب كثير ولا واحد مما ذكرنا أنه موجود فيه أنواع جميع أنواع الواحد التي ذكرنا. ولا يلحقه ما 
 | 
				
			||||||
 | 
					حركة، ولا نفس، ولا عقل، ولا كل، ولا جزء، ولا جميع، ولا بعض، ولا واحد بالإضافة إلى غير مثل واحد مرسل، ولا يقبل 
 | 
				
			||||||
 | 
					أن الواحد الحق ليس هو شيء من المعقولات ولا عنصر، ولا جنس، ولا نوع، ولا شخص، ولا فصل، ولا خاصة، ولا عرض عام، ولا 
 | 
				
			||||||
 | 
					ما ينسب إليه. وبين أن الهوية تقال على كل ما عليه الواحد. فالهوية تقال لما بعده أنواع الواحد. فقد تبين 
 | 
				
			||||||
 | 
					بكل نوع من هذه. فيقال كثير إما لأنه لا متصل فهي منفصلة، ولأن عنصرها ينقسم للصور، أو صورها للجنس، أو إلى 
 | 
				
			||||||
 | 
					واحد بالصورة، ولا ما كان واحداً بالصورة فهو واحد بالعدد. فبين أن مقابل الوحدة الكثرة. فالكثرة إذن تقال 
 | 
				
			||||||
 | 
					واحداً بالجنس فهو واحد بالنسبة. وليس ما كان واحداً بالنسبة فهو واحد بالجنس، ولا ما كان واحداً بالجنس فهو 
 | 
				
			||||||
 | 
					أواخرها أعني أن ما كان واحداً بالعدد فهو واحد بالصورة، وما كان واحداً بالصورة فهو واحداً بالجنس، وما كان 
 | 
				
			||||||
 | 
					بالعدد، ثم الواحد بالصورة، ثم الواحد بالجنس، ثم الواحد بالمساواة يتبع أواخرها أوائلها، ولا يتبع أوائلها 
 | 
				
			||||||
 | 
					بالمساواة هي التي نسبتها واحد كالأشياء الطبية المنسوبة جميعاً إلى الطب. وجميع هذه الأنواع التي ذكرنا أعني الواحد 
 | 
				
			||||||
 | 
					حدها واحد. والواحد بالجنس هي التي حد محمولها واحد. والتي بالاسم أعني بها ما هي بالمساواة واحد، والواحد 
 | 
				
			||||||
 | 
					بالاتصال هو الواحد بالعنصر أو بالرباط، وهو الذي يقال له واحد بالعدد أو بالشكل. والواحد بالصورة هي التي 
 | 
				
			||||||
 | 
					العنصر، وإما بالصورة وهو من حيز النوع، وإما بالاسم وهو من حيزهما جميعاً، وإما بالجنس وهو من حيز الأول. فالواحد 
 | 
				
			||||||
 | 
					عليه الواحد مما ذكرنا أنه يقال واحد. وهن جميعاً ما جوهرها واحد، وينقسم قسمة أولى إما بالاتصال وهو من حيز 
 | 
				
			||||||
 | 
					كانا يقالان على رجل واحد أو على الإنسان، أو الإنسان والكاتب واحد، وما كان كذلك. وأما بالذات فباقي ما يقال 
 | 
				
			||||||
 | 
					فكنوع المقول بالاسم المشترك، وأما بالأسماء المترادفة أو جامع أعراض كثيرة مقولنا الكاتب والخطيب واحد، إذا 
 | 
				
			||||||
 | 
					من باقي أنواع الواحد وأشدها توحداً. فقد تبين مما قلنا أن الواحد يقال إما بالذات وإما بالعرض. أما بالعرض 
 | 
				
			||||||
 | 
					كامل. وما كان كذلك فهو متكثر بتفضله أيضاً. وأحرى بأن يكون الذي لا ينقسم أشد التي يقال واحد استحقاقاً للوحدة 
 | 
				
			||||||
 | 
					يقال إن خط الدائرة أشد استحقاقاً للواحد من غيره من الخطوط، إذ هو كل الحد، لأنه لا نقص فيه ولا زيادة، بل كل 
 | 
				
			||||||
 | 
					الكلية، فإنه يقال رطل واحد، لأنه إن انفصل من كلية الرطل شيء، بطل الرطل، فلم يك كلاً لرطل واحد. وكذلك ما 
 | 
				
			||||||
 | 
					متكثرة بحاملاتها أعني الزمان الماضي، والزمان الآتي التي هي مشتركة لهما. ويقال واحد أيضاً الذي لا ينقسم من جهة 
 | 
				
			||||||
 | 
					أحدهما له وضع كعلامة الخط التي هي نهايته، فإنه لا آخر لها، لأنها نهاية بعد واحد، ونهاية البعد لا بعد. وهي 
 | 
				
			||||||
 | 
					آخر، وهو ما كان كذلك، لأنه لا جزء له مثله، ولا مثل غيره، وأيضاً وهو مشترك، وما كان كذلك فإنه يقال على نوعين: 
 | 
				
			||||||
 | 
					بمتصلة، ولا وضع للعلل التي بها الواحد العددي لا منقسم، وهو مكيال الألفاظ فقط. ويقال واحد لأنه لا ينقسم بنوع 
 | 
				
			||||||
 | 
					متكثر أيضاً من جهة موضوعاته التي يعدها، وهذا هو الواحد العددي مكيال كلها. والآخر حروف الأصوات فإنها ليست 
 | 
				
			||||||
 | 
					كالواحد العددي فإنه ليس بشيء متصل، أعني أن له أبعادا ونهايات فهو شيء متصل، بل هو لا منقسم ولا منفصل. وهذا 
 | 
				
			||||||
 | 
					آخر ما كان لا ينقسم لأنه متصلاً. وما كان كذلك فإنه يقال على نوعين أحدهما لأنه ليس بمتصل، ولا وضع له، ولا مشترك 
 | 
				
			||||||
 | 
					لما ركب منه؛ وبالتفصيل دائماً أيضاً. وهذه جميعاً من المقول واحد لاتصاله أيضاً. ويقال واحد لأنه لا ينقسم بنوع 
 | 
				
			||||||
 | 
					مثال، أو عرضي كذلك، أو نوع، أو جنس، أو فصل، أو خاصة، أو عرض عام. فإنه إن قسم لم يكن هو ما هو. وهو متكثر 
 | 
				
			||||||
 | 
					ذاته، كالإنسان الواحد، كمحمد وسعيد. وكالفرس الواحد، كالرائد وذوي العقال، وما كان كذلك من كل شخص طبيعي ذي 
 | 
				
			||||||
 | 
					واسماً وهذا أيضاً يتكثر لأنه لا ينقسم أي كل قابلاً دائماً. ويقال أيضاً لا ينقسم بالفعل ولا بالقوة الذي إن قسم بطلت 
 | 
				
			||||||
 | 
					لنهاياته كحد العلامات لنهايات الخط. كذلك كل مشتبه الأجزاء يقال به واحد لأنه لا ينقسم، أي كل مفصول منه محتمل حداً 
 | 
				
			||||||
 | 
					ببعديه ونهاياته الأربع، والخط ببعده ونهايتيه. وكذلك المكان يتكثر بنهاياته التي هي الآنات في الزمان الحادة 
 | 
				
			||||||
 | 
					وأيضاً فإن الجرم تكثير بأبعاده الثلاثة ونهاياته الست، والسطح 
 | 
				
			||||||
							
								
								
									
										137
									
								
								samples/latin.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										137
									
								
								samples/latin.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,137 @@
 | 
				
			||||||
 | 
					Call me Ishmael. Some years ago—never mind how long precisely—having little or no money in my purse, and 
 | 
				
			||||||
 | 
					nothing particular to interest me on shore, I thought I would sail about a little and see the watery part 
 | 
				
			||||||
 | 
					of the world. It is a way I have of driving off the spleen, and regulating the circulation. Whenever I 
 | 
				
			||||||
 | 
					find myself growing grim about the mouth; whenever it is a damp, drizzly November in my soul; whenever 
 | 
				
			||||||
 | 
					I find myself involuntarily pausing before coffin warehouses, and bringing up the rear of every funeral 
 | 
				
			||||||
 | 
					I meet; and especially whenever my hypos get such an upper hand of me, that it requires a strong moral 
 | 
				
			||||||
 | 
					principle to prevent me from deliberately stepping into the street, and methodically knocking people’s 
 | 
				
			||||||
 | 
					hats off—then, I account it high time to get to sea as soon as I can. This is my substitute for pistol 
 | 
				
			||||||
 | 
					and ball. With a philosophical flourish Cato throws himself upon his sword; I quietly take to the ship. 
 | 
				
			||||||
 | 
					There is nothing surprising in this. If they but knew it, almost all men in their degree, some time or 
 | 
				
			||||||
 | 
					other, cherish very nearly the same feelings towards the ocean with me.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There now is your insular city of the Manhattoes, belted round by wharves as Indian isles by coral reefs—commerce 
 | 
				
			||||||
 | 
					surrounds it with her surf. Right and left, the streets take you waterward. Its extreme down-town is the 
 | 
				
			||||||
 | 
					battery, where that noble mole is washed by waves, and cooled by breezes, which a few hours previous were 
 | 
				
			||||||
 | 
					out of sight of land. Look at the crowds of water-gazers there.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Circumambulate the city of a dreamy Sabbath afternoon. Go from Corlears Hook to Coenties Slip, and from 
 | 
				
			||||||
 | 
					thence, by Whitehall, northward. What do you see?—Posted like silent sentinels all around the town, stand 
 | 
				
			||||||
 | 
					thousands upon thousands of mortal men fixed in ocean reveries. Some leaning against the spiles; some 
 | 
				
			||||||
 | 
					seated upon the pier-heads; some looking over the bulwarks of ships from China; some high aloft in the 
 | 
				
			||||||
 | 
					rigging, as if striving to get a still better seaward peep. But these are all landsmen; of week days pent 
 | 
				
			||||||
 | 
					up in lath and plaster—tied to counters, nailed to benches, clinched to desks. How then is this? Are the 
 | 
				
			||||||
 | 
					green fields gone? What do they here?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					But look! here come more crowds, pacing straight for the water, and seemingly bound for a dive. Strange! 
 | 
				
			||||||
 | 
					Nothing will content them but the extremest limit of the land; loitering under the shady lee of yonder 
 | 
				
			||||||
 | 
					warehouses will not suffice. No. They must get just as nigh the water as they possibly can without falling 
 | 
				
			||||||
 | 
					in. And there they stand—miles of them—leagues. Inlanders all, they come from lanes and alleys, streets 
 | 
				
			||||||
 | 
					and avenues—north, east, south, and west. Yet here they all unite. Tell me, does the magnetic virtue of 
 | 
				
			||||||
 | 
					the needles of the compasses of all those ships attract them thither?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Once more. Say, you are in the country; in some high land of lakes. Take almost any path you please, and 
 | 
				
			||||||
 | 
					ten to one it carries you down in a dale, and leaves you there by a pool in the stream. There is magic 
 | 
				
			||||||
 | 
					in it. Let the most absent-minded of men be plunged in his deepest reveries—stand that man on his legs, 
 | 
				
			||||||
 | 
					set his feet a-going, and he will infallibly lead you to water, if water there be in all that region. 
 | 
				
			||||||
 | 
					Should you ever be athirst in the great American desert, try this experiment, if your caravan happen to 
 | 
				
			||||||
 | 
					be supplied with a metaphysical professor. Yes, as every one knows, meditation and water are wedded for 
 | 
				
			||||||
 | 
					ever.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					But here is an artist. He desires to paint you the dreamiest, shadiest, quietest, most enchanting bit 
 | 
				
			||||||
 | 
					of romantic landscape in all the valley of the Saco. What is the chief element he employs? There stand 
 | 
				
			||||||
 | 
					his trees, each with a hollow trunk, as if a hermit and a crucifix were within; and here sleeps his meadow, 
 | 
				
			||||||
 | 
					and there sleep his cattle; and up from yonder cottage goes a sleepy smoke. Deep into distant woodlands 
 | 
				
			||||||
 | 
					winds a mazy way, reaching to overlapping spurs of mountains bathed in their hill-side blue. But though 
 | 
				
			||||||
 | 
					the picture lies thus tranced, and though this pine-tree shakes down its sighs like leaves upon this shepherd’s 
 | 
				
			||||||
 | 
					head, yet all were vain, unless the shepherd’s eye were fixed upon the magic stream before him. Go visit 
 | 
				
			||||||
 | 
					the Prairies in June, when for scores on scores of miles you wade knee-deep among Tiger-lilies—what is 
 | 
				
			||||||
 | 
					the one charm wanting?—Water—there is not a drop of water there! Were Niagara but a cataract of sand, 
 | 
				
			||||||
 | 
					would you travel your thousand miles to see it? Why did the poor poet of Tennessee, upon suddenly receiving 
 | 
				
			||||||
 | 
					two handfuls of silver, deliberate whether to buy him a coat, which he sadly needed, or invest his money 
 | 
				
			||||||
 | 
					in a pedestrian trip to Rockaway Beach? Why is almost every robust healthy boy with a robust healthy soul 
 | 
				
			||||||
 | 
					in him, at some time or other crazy to go to sea? Why upon your first voyage as a passenger, did you yourself 
 | 
				
			||||||
 | 
					feel such a mystical vibration, when first told that you and your ship were now out of sight of land? 
 | 
				
			||||||
 | 
					Why did the old Persians hold the sea holy? Why did the Greeks give it a separate deity, and own brother 
 | 
				
			||||||
 | 
					of Jove? Surely all this is not without meaning. And still deeper the meaning of that story of Narcissus, 
 | 
				
			||||||
 | 
					who because he could not grasp the tormenting, mild image he saw in the fountain, plunged into it and 
 | 
				
			||||||
 | 
					was drowned. But that same image, we ourselves see in all rivers and oceans. It is the image of the ungraspable 
 | 
				
			||||||
 | 
					phantom of life; and this is the key to it all.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Now, when I say that I am in the habit of going to sea whenever I begin to grow hazy about the eyes, and 
 | 
				
			||||||
 | 
					begin to be over conscious of my lungs, I do not mean to have it inferred that I ever go to sea as a passenger. 
 | 
				
			||||||
 | 
					For to go as a passenger you must needs have a purse, and a purse is but a rag unless you have something 
 | 
				
			||||||
 | 
					in it.  Besides, passengers get sea-sick—grow quarrelsome—don’t sleep of nights—do not enjoy themselves 
 | 
				
			||||||
 | 
					much, as a general thing;—no, I never go as a passenger; nor, though I am something of a salt, do I ever 
 | 
				
			||||||
 | 
					go to sea as a Commodore, or a Captain, or a Cook.  I abandon the glory and distinction of such offices 
 | 
				
			||||||
 | 
					to those who like them.  For my part, I abominate all honorable respectable toils, trials, and tribulations 
 | 
				
			||||||
 | 
					of every kind whatsoever.  It is quite as much as I can do to take care of myself, without taking care 
 | 
				
			||||||
 | 
					of ships, barques, brigs, schooners, and what not.  And as for going as cook,—though I confess there is 
 | 
				
			||||||
 | 
					considerable glory in that, a cook being a sort of officer on ship-board—yet, somehow, I never fancied 
 | 
				
			||||||
 | 
					broiling fowls;—though once broiled, judiciously buttered, and judgmatically salted and peppered, there 
 | 
				
			||||||
 | 
					is no one who will speak more respectfully, not to say reverentially, of a broiled fowl than I will.  
 | 
				
			||||||
 | 
					It is out of the idolatrous dotings of the old Egyptians upon broiled ibis and roasted river horse, that 
 | 
				
			||||||
 | 
					you see the mummies of those creatures in their huge bake-houses the pyramids.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					No, when I go to sea, I go as a simple sailor, right before the mast, plumb down into the forecastle, 
 | 
				
			||||||
 | 
					aloft there to the royal mast-head.  True, they rather order me about some, and make me jump from spar 
 | 
				
			||||||
 | 
					to spar, like a grasshopper in a May meadow.  And at first, this sort of thing is unpleasant enough.  
 | 
				
			||||||
 | 
					It touches one’s sense of honor, particularly if you come of an old established family in the land, the 
 | 
				
			||||||
 | 
					Van Rensselaers, or Randolphs, or Hardicanutes.  And more than all, if just previous to putting your hand 
 | 
				
			||||||
 | 
					into the tar-pot, you have been lording it as a country schoolmaster, making the tallest boys stand in 
 | 
				
			||||||
 | 
					awe of you.  The transition is a keen one, I assure you, from a schoolmaster to a sailor, and requires 
 | 
				
			||||||
 | 
					a strong decoction of Seneca and the Stoics to enable you to grin and bear it.  But even this wears off 
 | 
				
			||||||
 | 
					in time.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					What of it, if some old hunks of a sea-captain orders me to get a broom and sweep down the decks?  What 
 | 
				
			||||||
 | 
					does that indignity amount to, weighed, I mean, in the scales of the New Testament?  Do you think the 
 | 
				
			||||||
 | 
					archangel Gabriel thinks anything the less of me, because I promptly and respectfully obey that old hunks 
 | 
				
			||||||
 | 
					in that particular instance?  Who aint a slave?  Tell me that.  Well, then, however the old sea-captains 
 | 
				
			||||||
 | 
					may order me about—however they may thump and punch me about, I have the satisfaction of knowing that 
 | 
				
			||||||
 | 
					it is all right; that everybody else is one way or other served in much the same way—either in a physical 
 | 
				
			||||||
 | 
					or metaphysical point of view, that is; and so the universal thump is passed round, and all hands should 
 | 
				
			||||||
 | 
					rub each other’s shoulder-blades, and be content.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Again, I always go to sea as a sailor, because they make a point of paying me for my trouble, whereas 
 | 
				
			||||||
 | 
					they never pay passengers a single penny that I ever heard of.  On the contrary, passengers themselves 
 | 
				
			||||||
 | 
					must pay.  And there is all the difference in the world between paying and being paid.  The act of paying 
 | 
				
			||||||
 | 
					is perhaps the most uncomfortable infliction that the two orchard thieves entailed upon us.  But being 
 | 
				
			||||||
 | 
					paid,—what will compare with it?  The urbane activity with which a man receives money is really marvellous, 
 | 
				
			||||||
 | 
					considering that we so earnestly believe money to be the root of all earthly ills, and that on no account 
 | 
				
			||||||
 | 
					can a monied man enter heaven.  Ah! how cheerfully we consign ourselves to perdition!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Finally, I always go to sea as a sailor, because of the wholesome exercise and pure air of the forecastle 
 | 
				
			||||||
 | 
					deck.  For as in this world, head winds are far more prevalent than winds from astern (that is, if you 
 | 
				
			||||||
 | 
					never violate the Pythagorean maxim), so for the most part the Commodore on the quarter-deck gets his 
 | 
				
			||||||
 | 
					atmosphere at second hand from the sailors on the forecastle.  He thinks he breathes it first; but not 
 | 
				
			||||||
 | 
					so.  In much the same way do the commonalty lead their leaders in many other things, at the same time 
 | 
				
			||||||
 | 
					that the leaders little suspect it.  But wherefore it was that after having repeatedly smelt the sea as 
 | 
				
			||||||
 | 
					a merchant sailor, I should now take it into my head to go on a whaling voyage; this the invisible police 
 | 
				
			||||||
 | 
					officer of the Fates, who has the constant surveillance of me, and secretly dogs me, and influences me 
 | 
				
			||||||
 | 
					in some unaccountable way—he can better answer than any one else.  And, doubtless, my going on this whaling 
 | 
				
			||||||
 | 
					voyage, formed part of the grand programme of Providence that was drawn up a long time ago.  It came in 
 | 
				
			||||||
 | 
					as a sort of brief interlude and solo between more extensive performances.  I take it that this part of 
 | 
				
			||||||
 | 
					the bill must have run something like this: “Grand Contested Election for the Presidency of the United 
 | 
				
			||||||
 | 
					States. whaling voyage by one ishmael. BLOODY BATTLE IN AFFGHANISTAN.”
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Though I cannot tell why it was exactly that those stage managers, the Fates, put me down for this shabby 
 | 
				
			||||||
 | 
					part of a whaling voyage, when others were set down for magnificent parts in high tragedies, and short 
 | 
				
			||||||
 | 
					and easy parts in genteel comedies, and jolly parts in farces—though I cannot tell why this was exactly; 
 | 
				
			||||||
 | 
					yet, now that I recall all the circumstances, I think I can see a little into the springs and motives 
 | 
				
			||||||
 | 
					which being cunningly presented to me under various disguises, induced me to set about performing the 
 | 
				
			||||||
 | 
					part I did, besides cajoling me into the delusion that it was a choice resulting from my own unbiased 
 | 
				
			||||||
 | 
					freewill and discriminating judgment.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Chief among these motives was the overwhelming idea of the great whale himself.  Such a portentous and 
 | 
				
			||||||
 | 
					mysterious monster roused all my curiosity.  Then the wild and distant seas where he rolled his island 
 | 
				
			||||||
 | 
					bulk; the undeliverable, nameless perils of the whale; these, with all the attending marvels of a thousand 
 | 
				
			||||||
 | 
					Patagonian sights and sounds, helped to sway me to my wish.  With other men, perhaps, such things would 
 | 
				
			||||||
 | 
					not have been inducements; but as for me, I am tormented with an everlasting itch for things remote.  
 | 
				
			||||||
 | 
					I love to sail forbidden seas, and land on barbarous coasts.  Not ignoring what is good, I am quick to 
 | 
				
			||||||
 | 
					perceive a horror, and could still be social with it—would they let me—since it is but well to be on friendly 
 | 
				
			||||||
 | 
					terms with all the inmates of the place one lodges in.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					By reason of these things, then, the whaling voyage was welcome; the great flood-gates of the wonder-world 
 | 
				
			||||||
 | 
					swung open, and in the wild conceits that swayed me to my purpose, two and two there floated into my inmost 
 | 
				
			||||||
 | 
					soul, endless processions of the whale, and, mid most of them all, one grand hooded phantom, like a snow 
 | 
				
			||||||
 | 
					hill in the air.
 | 
				
			||||||
							
								
								
									
										22
									
								
								src/cache.rs
									
										
									
									
									
								
							
							
						
						
									
										22
									
								
								src/cache.rs
									
										
									
									
									
								
							| 
						 | 
					@ -4,7 +4,7 @@ use std::{
 | 
				
			||||||
    mem,
 | 
					    mem,
 | 
				
			||||||
    num::NonZeroU64,
 | 
					    num::NonZeroU64,
 | 
				
			||||||
    ops::Deref,
 | 
					    ops::Deref,
 | 
				
			||||||
    sync::{Arc, RwLock},
 | 
					    sync::{Arc, Mutex},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
use wgpu::{
 | 
					use wgpu::{
 | 
				
			||||||
    BindGroup, BindGroupDescriptor, BindGroupEntry, BindGroupLayout, BindGroupLayoutEntry,
 | 
					    BindGroup, BindGroupDescriptor, BindGroupEntry, BindGroupLayout, BindGroupLayoutEntry,
 | 
				
			||||||
| 
						 | 
					@ -29,12 +29,12 @@ struct Inner {
 | 
				
			||||||
    atlas_layout: BindGroupLayout,
 | 
					    atlas_layout: BindGroupLayout,
 | 
				
			||||||
    uniforms_layout: BindGroupLayout,
 | 
					    uniforms_layout: BindGroupLayout,
 | 
				
			||||||
    pipeline_layout: PipelineLayout,
 | 
					    pipeline_layout: PipelineLayout,
 | 
				
			||||||
    cache: RwLock<
 | 
					    cache: Mutex<
 | 
				
			||||||
        Vec<(
 | 
					        Vec<(
 | 
				
			||||||
            TextureFormat,
 | 
					            TextureFormat,
 | 
				
			||||||
            MultisampleState,
 | 
					            MultisampleState,
 | 
				
			||||||
            Option<DepthStencilState>,
 | 
					            Option<DepthStencilState>,
 | 
				
			||||||
            Arc<RenderPipeline>,
 | 
					            RenderPipeline,
 | 
				
			||||||
        )>,
 | 
					        )>,
 | 
				
			||||||
    >,
 | 
					    >,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -153,7 +153,7 @@ impl Cache {
 | 
				
			||||||
            uniforms_layout,
 | 
					            uniforms_layout,
 | 
				
			||||||
            atlas_layout,
 | 
					            atlas_layout,
 | 
				
			||||||
            pipeline_layout,
 | 
					            pipeline_layout,
 | 
				
			||||||
            cache: RwLock::new(Vec::new()),
 | 
					            cache: Mutex::new(Vec::new()),
 | 
				
			||||||
        }))
 | 
					        }))
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -200,7 +200,7 @@ impl Cache {
 | 
				
			||||||
        format: TextureFormat,
 | 
					        format: TextureFormat,
 | 
				
			||||||
        multisample: MultisampleState,
 | 
					        multisample: MultisampleState,
 | 
				
			||||||
        depth_stencil: Option<DepthStencilState>,
 | 
					        depth_stencil: Option<DepthStencilState>,
 | 
				
			||||||
    ) -> Arc<RenderPipeline> {
 | 
					    ) -> RenderPipeline {
 | 
				
			||||||
        let Inner {
 | 
					        let Inner {
 | 
				
			||||||
            cache,
 | 
					            cache,
 | 
				
			||||||
            pipeline_layout,
 | 
					            pipeline_layout,
 | 
				
			||||||
| 
						 | 
					@ -209,25 +209,25 @@ impl Cache {
 | 
				
			||||||
            ..
 | 
					            ..
 | 
				
			||||||
        } = self.0.deref();
 | 
					        } = self.0.deref();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        let mut cache = cache.write().expect("Write pipeline cache");
 | 
					        let mut cache = cache.lock().expect("Write pipeline cache");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        cache
 | 
					        cache
 | 
				
			||||||
            .iter()
 | 
					            .iter()
 | 
				
			||||||
            .find(|(fmt, ms, ds, _)| fmt == &format && ms == &multisample && ds == &depth_stencil)
 | 
					            .find(|(fmt, ms, ds, _)| fmt == &format && ms == &multisample && ds == &depth_stencil)
 | 
				
			||||||
            .map(|(_, _, _, p)| Arc::clone(p))
 | 
					            .map(|(_, _, _, p)| p.clone())
 | 
				
			||||||
            .unwrap_or_else(|| {
 | 
					            .unwrap_or_else(|| {
 | 
				
			||||||
                let pipeline = Arc::new(device.create_render_pipeline(&RenderPipelineDescriptor {
 | 
					                let pipeline = device.create_render_pipeline(&RenderPipelineDescriptor {
 | 
				
			||||||
                    label: Some("glyphon pipeline"),
 | 
					                    label: Some("glyphon pipeline"),
 | 
				
			||||||
                    layout: Some(pipeline_layout),
 | 
					                    layout: Some(pipeline_layout),
 | 
				
			||||||
                    vertex: VertexState {
 | 
					                    vertex: VertexState {
 | 
				
			||||||
                        module: shader,
 | 
					                        module: shader,
 | 
				
			||||||
                        entry_point: "vs_main",
 | 
					                        entry_point: Some("vs_main"),
 | 
				
			||||||
                        buffers: vertex_buffers,
 | 
					                        buffers: vertex_buffers,
 | 
				
			||||||
                        compilation_options: PipelineCompilationOptions::default(),
 | 
					                        compilation_options: PipelineCompilationOptions::default(),
 | 
				
			||||||
                    },
 | 
					                    },
 | 
				
			||||||
                    fragment: Some(FragmentState {
 | 
					                    fragment: Some(FragmentState {
 | 
				
			||||||
                        module: shader,
 | 
					                        module: shader,
 | 
				
			||||||
                        entry_point: "fs_main",
 | 
					                        entry_point: Some("fs_main"),
 | 
				
			||||||
                        targets: &[Some(ColorTargetState {
 | 
					                        targets: &[Some(ColorTargetState {
 | 
				
			||||||
                            format,
 | 
					                            format,
 | 
				
			||||||
                            blend: Some(BlendState::ALPHA_BLENDING),
 | 
					                            blend: Some(BlendState::ALPHA_BLENDING),
 | 
				
			||||||
| 
						 | 
					@ -243,7 +243,7 @@ impl Cache {
 | 
				
			||||||
                    multisample,
 | 
					                    multisample,
 | 
				
			||||||
                    multiview: None,
 | 
					                    multiview: None,
 | 
				
			||||||
                    cache: None,
 | 
					                    cache: None,
 | 
				
			||||||
                }));
 | 
					                });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                cache.push((format, multisample, depth_stencil, pipeline.clone()));
 | 
					                cache.push((format, multisample, depth_stencil, pipeline.clone()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,15 +1,16 @@
 | 
				
			||||||
use crate::{
 | 
					use crate::{
 | 
				
			||||||
    text_render::GlyphonCacheKey, Cache, ContentType, RasterizeCustomGlyphRequest, FontSystem,
 | 
					    text_render::GlyphonCacheKey, Cache, ContentType, FontSystem, GlyphDetails, GpuCacheStatus,
 | 
				
			||||||
    GlyphDetails, GpuCacheStatus, RasterizedCustomGlyph, SwashCache,
 | 
					    RasterizeCustomGlyphRequest, RasterizedCustomGlyph, SwashCache,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
use etagere::{size2, Allocation, BucketedAtlasAllocator};
 | 
					use etagere::{size2, Allocation, BucketedAtlasAllocator};
 | 
				
			||||||
use lru::LruCache;
 | 
					use lru::LruCache;
 | 
				
			||||||
use rustc_hash::FxHasher;
 | 
					use rustc_hash::FxHasher;
 | 
				
			||||||
use std::{collections::HashSet, hash::BuildHasherDefault, sync::Arc};
 | 
					use std::{collections::HashSet, hash::BuildHasherDefault};
 | 
				
			||||||
use wgpu::{
 | 
					use wgpu::{
 | 
				
			||||||
    BindGroup, DepthStencilState, Device, Extent3d, ImageCopyTexture, ImageDataLayout,
 | 
					    BindGroup, DepthStencilState, Device, Extent3d, MultisampleState, Origin3d, Queue,
 | 
				
			||||||
    MultisampleState, Origin3d, Queue, RenderPipeline, Texture, TextureAspect, TextureDescriptor,
 | 
					    RenderPipeline, TexelCopyBufferLayout, TexelCopyTextureInfo, Texture, TextureAspect,
 | 
				
			||||||
    TextureDimension, TextureFormat, TextureUsages, TextureView, TextureViewDescriptor,
 | 
					    TextureDescriptor, TextureDimension, TextureFormat, TextureUsages, TextureView,
 | 
				
			||||||
 | 
					    TextureViewDescriptor,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type Hasher = BuildHasherDefault<FxHasher>;
 | 
					type Hasher = BuildHasherDefault<FxHasher>;
 | 
				
			||||||
| 
						 | 
					@ -107,16 +108,6 @@ impl InnerAtlas {
 | 
				
			||||||
        self.kind.num_channels()
 | 
					        self.kind.num_channels()
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    pub(crate) fn promote(&mut self, glyph: GlyphonCacheKey) {
 | 
					 | 
				
			||||||
        self.glyph_cache.promote(&glyph);
 | 
					 | 
				
			||||||
        self.glyphs_in_use.insert(glyph);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    pub(crate) fn put(&mut self, glyph: GlyphonCacheKey, details: GlyphDetails) {
 | 
					 | 
				
			||||||
        self.glyph_cache.put(glyph, details);
 | 
					 | 
				
			||||||
        self.glyphs_in_use.insert(glyph);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    pub(crate) fn grow(
 | 
					    pub(crate) fn grow(
 | 
				
			||||||
        &mut self,
 | 
					        &mut self,
 | 
				
			||||||
        device: &wgpu::Device,
 | 
					        device: &wgpu::Device,
 | 
				
			||||||
| 
						 | 
					@ -196,7 +187,7 @@ impl InnerAtlas {
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            queue.write_texture(
 | 
					            queue.write_texture(
 | 
				
			||||||
                ImageCopyTexture {
 | 
					                TexelCopyTextureInfo {
 | 
				
			||||||
                    texture: &self.texture,
 | 
					                    texture: &self.texture,
 | 
				
			||||||
                    mip_level: 0,
 | 
					                    mip_level: 0,
 | 
				
			||||||
                    origin: Origin3d {
 | 
					                    origin: Origin3d {
 | 
				
			||||||
| 
						 | 
					@ -207,7 +198,7 @@ impl InnerAtlas {
 | 
				
			||||||
                    aspect: TextureAspect::All,
 | 
					                    aspect: TextureAspect::All,
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
                &image_data,
 | 
					                &image_data,
 | 
				
			||||||
                ImageDataLayout {
 | 
					                TexelCopyBufferLayout {
 | 
				
			||||||
                    offset: 0,
 | 
					                    offset: 0,
 | 
				
			||||||
                    bytes_per_row: Some(width as u32 * self.kind.num_channels() as u32),
 | 
					                    bytes_per_row: Some(width as u32 * self.kind.num_channels() as u32),
 | 
				
			||||||
                    rows_per_image: None,
 | 
					                    rows_per_image: None,
 | 
				
			||||||
| 
						 | 
					@ -354,9 +345,7 @@ impl TextAtlas {
 | 
				
			||||||
        cache: &mut SwashCache,
 | 
					        cache: &mut SwashCache,
 | 
				
			||||||
        content_type: ContentType,
 | 
					        content_type: ContentType,
 | 
				
			||||||
        scale_factor: f32,
 | 
					        scale_factor: f32,
 | 
				
			||||||
        rasterize_custom_glyph: impl FnMut(
 | 
					        rasterize_custom_glyph: impl FnMut(RasterizeCustomGlyphRequest) -> Option<RasterizedCustomGlyph>,
 | 
				
			||||||
            RasterizeCustomGlyphRequest,
 | 
					 | 
				
			||||||
        ) -> Option<RasterizedCustomGlyph>,
 | 
					 | 
				
			||||||
    ) -> bool {
 | 
					    ) -> bool {
 | 
				
			||||||
        let did_grow = match content_type {
 | 
					        let did_grow = match content_type {
 | 
				
			||||||
            ContentType::Mask => self.mask_atlas.grow(
 | 
					            ContentType::Mask => self.mask_atlas.grow(
 | 
				
			||||||
| 
						 | 
					@ -384,13 +373,6 @@ impl TextAtlas {
 | 
				
			||||||
        did_grow
 | 
					        did_grow
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    pub(crate) fn glyph(&self, glyph: &GlyphonCacheKey) -> Option<&GlyphDetails> {
 | 
					 | 
				
			||||||
        self.mask_atlas
 | 
					 | 
				
			||||||
            .glyph_cache
 | 
					 | 
				
			||||||
            .peek(glyph)
 | 
					 | 
				
			||||||
            .or_else(|| self.color_atlas.glyph_cache.peek(glyph))
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    pub(crate) fn inner_for_content_mut(&mut self, content_type: ContentType) -> &mut InnerAtlas {
 | 
					    pub(crate) fn inner_for_content_mut(&mut self, content_type: ContentType) -> &mut InnerAtlas {
 | 
				
			||||||
        match content_type {
 | 
					        match content_type {
 | 
				
			||||||
            ContentType::Color => &mut self.color_atlas,
 | 
					            ContentType::Color => &mut self.color_atlas,
 | 
				
			||||||
| 
						 | 
					@ -403,7 +385,7 @@ impl TextAtlas {
 | 
				
			||||||
        device: &Device,
 | 
					        device: &Device,
 | 
				
			||||||
        multisample: MultisampleState,
 | 
					        multisample: MultisampleState,
 | 
				
			||||||
        depth_stencil: Option<DepthStencilState>,
 | 
					        depth_stencil: Option<DepthStencilState>,
 | 
				
			||||||
    ) -> Arc<RenderPipeline> {
 | 
					    ) -> RenderPipeline {
 | 
				
			||||||
        self.cache
 | 
					        self.cache
 | 
				
			||||||
            .get_or_create_pipeline(device, self.format, multisample, depth_stencil)
 | 
					            .get_or_create_pipeline(device, self.format, multisample, depth_stencil)
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,18 +4,18 @@ use crate::{
 | 
				
			||||||
    RasterizedCustomGlyph, RenderError, SwashCache, SwashContent, TextArea, TextAtlas, Viewport,
 | 
					    RasterizedCustomGlyph, RenderError, SwashCache, SwashContent, TextArea, TextAtlas, Viewport,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
use cosmic_text::{Color, SubpixelBin};
 | 
					use cosmic_text::{Color, SubpixelBin};
 | 
				
			||||||
use std::{slice, sync::Arc};
 | 
					use std::slice;
 | 
				
			||||||
use wgpu::{
 | 
					use wgpu::{
 | 
				
			||||||
    Buffer, BufferDescriptor, BufferUsages, DepthStencilState, Device, Extent3d, ImageCopyTexture,
 | 
					    Buffer, BufferDescriptor, BufferUsages, DepthStencilState, Device, Extent3d, MultisampleState,
 | 
				
			||||||
    ImageDataLayout, MultisampleState, Origin3d, Queue, RenderPass, RenderPipeline, TextureAspect,
 | 
					    Origin3d, Queue, RenderPass, RenderPipeline, TexelCopyBufferLayout, TexelCopyTextureInfo,
 | 
				
			||||||
    COPY_BUFFER_ALIGNMENT,
 | 
					    TextureAspect, COPY_BUFFER_ALIGNMENT,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/// A text renderer that uses cached glyphs to render text into an existing render pass.
 | 
					/// A text renderer that uses cached glyphs to render text into an existing render pass.
 | 
				
			||||||
pub struct TextRenderer {
 | 
					pub struct TextRenderer {
 | 
				
			||||||
    vertex_buffer: Buffer,
 | 
					    vertex_buffer: Buffer,
 | 
				
			||||||
    vertex_buffer_size: u64,
 | 
					    vertex_buffer_size: u64,
 | 
				
			||||||
    pipeline: Arc<RenderPipeline>,
 | 
					    pipeline: RenderPipeline,
 | 
				
			||||||
    glyph_vertices: Vec<GlyphToRender>,
 | 
					    glyph_vertices: Vec<GlyphToRender>,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -228,7 +228,7 @@ impl TextRenderer {
 | 
				
			||||||
                let start_y = (text_area.top + run.line_top) as i32;
 | 
					                let start_y = (text_area.top + run.line_top) as i32;
 | 
				
			||||||
                let end_y = (text_area.top + run.line_top + run.line_height) as i32;
 | 
					                let end_y = (text_area.top + run.line_top + run.line_height) as i32;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                start_y <= bounds_max_y && bounds_min_y <= end_y
 | 
					                start_y <= text_area.bounds.bottom && text_area.bounds.top <= end_y
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            let layout_runs = text_area
 | 
					            let layout_runs = text_area
 | 
				
			||||||
| 
						 | 
					@ -434,10 +434,12 @@ fn prepare_glyph<R>(
 | 
				
			||||||
where
 | 
					where
 | 
				
			||||||
    R: FnMut(RasterizeCustomGlyphRequest) -> Option<RasterizedCustomGlyph>,
 | 
					    R: FnMut(RasterizeCustomGlyphRequest) -> Option<RasterizedCustomGlyph>,
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    if atlas.mask_atlas.glyph_cache.contains(&cache_key) {
 | 
					    let details = if let Some(details) = atlas.mask_atlas.glyph_cache.get(&cache_key) {
 | 
				
			||||||
        atlas.mask_atlas.promote(cache_key);
 | 
					        atlas.mask_atlas.glyphs_in_use.insert(cache_key);
 | 
				
			||||||
    } else if atlas.color_atlas.glyph_cache.contains(&cache_key) {
 | 
					        details
 | 
				
			||||||
        atlas.color_atlas.promote(cache_key);
 | 
					    } else if let Some(details) = atlas.color_atlas.glyph_cache.get(&cache_key) {
 | 
				
			||||||
 | 
					        atlas.color_atlas.glyphs_in_use.insert(cache_key);
 | 
				
			||||||
 | 
					        details
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
        let Some(image) = (get_glyph_image)(cache, font_system, &mut rasterize_custom_glyph) else {
 | 
					        let Some(image) = (get_glyph_image)(cache, font_system, &mut rasterize_custom_glyph) else {
 | 
				
			||||||
            return Ok(None);
 | 
					            return Ok(None);
 | 
				
			||||||
| 
						 | 
					@ -472,7 +474,7 @@ where
 | 
				
			||||||
            let atlas_min = allocation.rectangle.min;
 | 
					            let atlas_min = allocation.rectangle.min;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            queue.write_texture(
 | 
					            queue.write_texture(
 | 
				
			||||||
                ImageCopyTexture {
 | 
					                TexelCopyTextureInfo {
 | 
				
			||||||
                    texture: &inner.texture,
 | 
					                    texture: &inner.texture,
 | 
				
			||||||
                    mip_level: 0,
 | 
					                    mip_level: 0,
 | 
				
			||||||
                    origin: Origin3d {
 | 
					                    origin: Origin3d {
 | 
				
			||||||
| 
						 | 
					@ -483,7 +485,7 @@ where
 | 
				
			||||||
                    aspect: TextureAspect::All,
 | 
					                    aspect: TextureAspect::All,
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
                &image.data,
 | 
					                &image.data,
 | 
				
			||||||
                ImageDataLayout {
 | 
					                TexelCopyBufferLayout {
 | 
				
			||||||
                    offset: 0,
 | 
					                    offset: 0,
 | 
				
			||||||
                    bytes_per_row: Some(image.width as u32 * inner.num_channels() as u32),
 | 
					                    bytes_per_row: Some(image.width as u32 * inner.num_channels() as u32),
 | 
				
			||||||
                    rows_per_image: None,
 | 
					                    rows_per_image: None,
 | 
				
			||||||
| 
						 | 
					@ -509,20 +511,17 @@ where
 | 
				
			||||||
            (GpuCacheStatus::SkipRasterization, None, inner)
 | 
					            (GpuCacheStatus::SkipRasterization, None, inner)
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        inner.put(
 | 
					        inner.glyphs_in_use.insert(cache_key);
 | 
				
			||||||
            cache_key,
 | 
					        // Insert the glyph into the cache and return the details reference
 | 
				
			||||||
            GlyphDetails {
 | 
					        inner.glyph_cache.get_or_insert(cache_key, || GlyphDetails {
 | 
				
			||||||
                width: image.width,
 | 
					            width: image.width,
 | 
				
			||||||
                height: image.height,
 | 
					            height: image.height,
 | 
				
			||||||
                gpu_cache,
 | 
					            gpu_cache,
 | 
				
			||||||
                atlas_id,
 | 
					            atlas_id,
 | 
				
			||||||
                top: image.top,
 | 
					            top: image.top,
 | 
				
			||||||
                left: image.left,
 | 
					            left: image.left,
 | 
				
			||||||
            },
 | 
					        })
 | 
				
			||||||
        );
 | 
					    };
 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    let details = atlas.glyph(&cache_key).unwrap();
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let mut x = x + details.left as i32;
 | 
					    let mut x = x + details.left as i32;
 | 
				
			||||||
    let mut y = (line_y * scale_factor).round() as i32 + y - details.top as i32;
 | 
					    let mut y = (line_y * scale_factor).round() as i32 + y - details.top as i32;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue